私のJSPには次のものがあります。
<s:textarea name="${param.objId}"/>
これにより、以下がレンダリングされます。
<textarea name="categoryObject.linkAttrValue[#ddAttr.id].link.id"
cols="" rows=""
id="browseCategoryObject_categoryObject_linkAttrValue_#ddAttr_id__link_id">7</textarea>
同様に、私はプロパティタグを持っています:
<s:property value="${param.objId}"/>
レンダリングするもの:
7
最後に、submit タグ:
<s:submit action="addRepeatingCategoryObject" value="addNew"
onclick="$('input[name=ddRepeatingAttrId]').val(%{#${param.objId}}); alert(%{#${param.objId}}); $('input[name=ddRepeatingAttrId]').val(%{#${param.innerDdAttr}.id}); " />
それはレンダリングします:
<input type="submit" id="browseCategoryObject_addRepeatingCategoryObject"
name="action:addRepeatingCategoryObject" value="addNew"
onclick="$('input[name=ddRepeatingAttrId]').val(); alert(); $('input[name=ddRepeatingAttrId]').val(4); "/>
式%{#${param.innerDdAttr}.id}
は で解決されますがs:submit
、 では%{#${param.objId}}
解決されませんが、および s:submit
で解決されます。s:property
s:textarea
なぜこのように機能するのか、誰にも分かりますか?
%{${param.objId}}
代わりに試してみましたが%{#${param.objId}}
、うまくいきました。
しかし、なぜそれが機能するのか説明できません...