プロが教える店舗&オフィスのセキュリティ対策術

Struts + JSPで
DynaValidatorFormに格納した値を

<html:text property="id" size="10" maxlength="8" />
<html:text property="name" size="80" maxlength="50" />

こんな感じでhtml:textとかで取り出すと思いますが、
次画面に遷移する際、html:textにユーザーが入力した値を
変数に入れる方法ってないでしょうか?
リンクで画面遷移するときに値をもたせたいので
html:formではなく

くhtml:link action="/hoge?<% id %>&<% name %>..." />

こんな感じでやりたいのです。
良い方法はあるでしょうか?

A 回答 (3件)

質問の意味を間違えてたみたいです。


すみません。

JavaScriptでどうとでもなりそうですが。。。

たとえばこんな感じとか。。。
<html>
<head>
<script language="JavaScript">
function jump() {
var id = document.form1.id.value;
var name = document.form1.name.value;
alert(id);
alert(name);
window.location.href="/hoge.do?id=" + id + "&name=" + name;
}
</script>
</head>
<body>
<form name="form1">
<input type="text" name="id"/>
<input type="text" name="name"/>
</form>
<a href="JavaScript:jump()">xxxxxxx</a>
</body>
</html>

これがJSPで生成できればいいのではないかと。

参考になれば幸いです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

なるほど!そうやればいけますね!
僕はJavaScriptでsubmitさせる方法しか出てきませんでした。

まだまだ修行が足りないようです。。。

お礼日時:2009/02/08 21:51

こんにちわ。


参考URLで<html:link/>について勉強してみてください。

あとは<bean:define/>タグでdefineして使うのも1つの方法かもしれませんね。
<bean:define id="id" name="form_name" property="id"/>
<a href="/hoge.do?id=<%=id%>&...">....</a>

更に<c:out value="${form_name.map.property_name}"/>も1つの方法。
<a href="/hoge.do?id=<c:out value="${form_name.map.id}"/>&...">....</a>

実際に試してないので動くかはわかりませんが、お試しあれ。

参考URL:http://struts.wasureppoi.com/taglib/03_link_para …
    • good
    • 0

うーん


ためしに遷移先のJSPで
<%=request.getAttribute(id)%>
idはリクエストのid
で取れるか試してみてちょ。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

次画面でgetAttributeしてリクエストを受け取る事はできるんです。
ただ動的に変わるテキストボックスの中身は「?」ではどうにもならんのです。
html:form以外でなんとかならないもんかと無茶苦茶な事考えてます。(汗

お礼日時:2009/02/08 21:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!