1
我们已经使用了struts 2 jquery插件。我们已将所有选择更改为jquery select2
。Struts 2 jquery插件sj:select和jquery.select2
$('select:visible:not').select2()
的是大量的sj:selects
选择它通过AJAX重新加载,如:
<s:select id="areaCode" name="areaCode" list="areas" listKey="top"
listValue="areaName" headerKey=""
headerValue="Select It"/>
<sj:select id="realodedBranches" name="openerBranchNo"
list="realodedBranches" href="%{reloadbranch}" listKey="branchCode"
listValue="branchName" reloadTopics="reloadBranches"/>
每一件事情做工精细,希望当事件只返回一个结果行,并选择框中将只有一个选项。在这种状态下,select 2将不允许用户选择此选项!
如果我改变结果返回更多的结果,它工作正常。
我只看到这个问题,当我重新加载选择,我不知道为什么会发生这种情况。
我与jQuery的一个简单的测试只能选择2,它工作正常,并添加选项可选:
<select id="mainSelect">
</select>
<button id="clickMe">Click Me </button>
$('select').select2();
$('#clickMe').click(function(){
$('#mainSelect')
.append($("<option></option>")
.attr("value","val1")
.text("text1"));
});
'aria-selected =“true”'意味着它已被选中。插入新值后需要更新select2。 – 2015-04-08 12:49:46
@AleksandrM谢谢,选择2更新时关联的选择框选项更改,您可以看到更新的选项,但它使它被错误地选中。 PS:如果你的意思是调用'trigger('change')',我做了,但没有运气:( – 2015-04-08 13:23:13
再次调用'.select2()':http://stackoverflow.com/q/19899983/1700321像这样:http://stackoverflow.com/q/16480910/1700321。 – 2015-04-08 13:29:44