我想找到一种方法来复制一个select2的选定值,被复制到一个隐藏的字段(为了被标记处理它们以后用ssjs)它在csjs中工作得很好,在点击一个按钮:
<xp:button value="Label" id="button12">
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" refreshId="computedField7">
<xp:this.script><![CDATA[var test= ("Selected value is: "+x$("#{id:vehicle}").select2("val"));
var demo = XSP.getElementById("#{id:inputHidden1}");
demo.value = test;
alert (test);
]]></xp:this.script>
</xp:eventHandler></xp:button>
但是我试过用jquery做这个,但它似乎不起作用。我得到了正确的警报消息,但我的字段没有更新。我已经尝试了很多方法/语法来获得这个字段的句柄…
<script>
$("#vehicle").select2();
$(document.body).on("change","#vehicle",function(){
var thisone = $("#vehicle").select2("val");
$("#button12").trigger("click");
var demo = $(XSP.getElementById("#{id:inputHidden1}"));
$('#view:_id1:inputHidden1').val(thisone)
$('input[name="{id:inputHidden1}"]', '#vehicle').select2('val');
alert("Selected value is:"+ thisone);
});
</script>
要从客户端脚本中查找XPages字段,我通常使用选择器,通过搜索浏览器中id以指定值结束的字段来查找它。
如果XPage字段命名为inputHidden1
,可以使用$("input[id$='inputHidden1']")
你也可以使用x$函数:x$("#{id:inputHidden1}")