(この質問は難しいですが、まだ解決できませんでした)<div>タグを使用してさまざまな値を表示している製品カタログがあります。ユーザーが選択した製品を買い物かごに追加するためのボタンがあるはずですが、そうではありません。 ProductsIDをJavaクラスに送信することを知っています。
Name:ProductA Name:ProductB
Price:3.5 Price:5.0
Add Add
JSP/struts2の私のコードは次のとおりです。
これは、値を受け取ることでタグにFriend.nameを入力するフォームです。
<sx:div>
<div id="Name">name:${Friend.name}</div>
<s:form action="myMethod" >
<s:submit/>
</s:form>
</sx:div>
ユーザーが送信をクリックすると、必要なクラスに移動し、11行目が実行されますが、「name is:null」が表示されます。
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String myMethod() {
Line 11 System.out.println("in mymethod"); // output is : mymethod
System.out.println("The name is:" + this.name); // output is: the name is: null
return "SUCCESS";
}
jspコードがAJAXタグに含まれているために発生したかどうかはわかりませんが、問題の原因となっている別の問題があります。
使っている時のように変です
<s:textfield name="Name" label="Name" />
そして、それを受け入れる入力を入力し、this.nameを使用して値を表示します!!
別の例HTMLおよびJSP(新しいバージョン)コードは次のとおりです。
<s:form action="AddProduct" >
<tr><td><div id="image"><img src=${Product.thumbNailUrl} alt="image"/></div></td></tr>
<s:textfield name="Name" label="Name" />
<tr><td><div id="Name">Here:${Product.name}</div></td></tr>
<s:hidden id="Name1" value="name1">${Product.name}</s:hidden>
<s:label id="name2" name="name2" value="John"/>
<tr><td><div id="Rate:">Rate:${Product.highRate}</div></td></tr>
<tr><td><div id="Address">Address:${Product.address}</div></td></tr>
<tr><td>
<s:submit/>
</s:form>
** * ** * HTML * *
<tr><td><div id="Name">Here:Beaufort</div></td></tr>
Beaufort<input type="hidden" name="" value="name1" id="Name1"/>
<tr>
<td class="tdLabel"></td>
<td><label id="name2">John</label></td>
</tr>
<tr><td><div id="Rate:">Rate:437.19</div></td></tr>
<tr><td><div id="Address">Address:33 Beaufort</div></td></tr>
<tr><td>
<tr>
<td colspan="2"><div align="right"><input type="submit" id="AddProduct_0"
value="Submit"/>
</div></td>
</tr>
</table></form>