int.jsp
<baomi:numberfield disabled="true" required="true" name="%{policyName }_%{name }_int" id="%{policyName }_%{name }_int"></baomi:numberfield>
radio.jsp
<baomi:radio cssClass="%{policyName }_%{name }_radio" disabled="true" onclick="setRaidoValue(this)" id="%{policyName }_%{name }_radio" list="valueRange.split('\\\\|')" name="%{policyName }_%{name }_radio"></baomi:radio> <s:hidden id="%{policyName }_%{name }_radio" /> <script> function setRaidoValue(tag){ var value = $(tag).val(); $("#" + $(tag).attr("name")).val(value); } </script>
OK,现在差不多了。
处理不同类型的PolicyParam,我的思路是加载和type同名的jsp文件,嵌入页面框架中。并且每个子jsp的元素需要支持jquery的.val()方法,如果某个标签不支持,则写一个隐藏的input标签,这样,以后扩展新类型就不用更改其他代码。