如何以编程方式更改控件自身更改事件中的select框select,并使其在移动浏览器中可用
考虑以下简化的HTML和jQuery代码:
<select id="select1"> <option value="10">10</option> <option value="5">5</option> <option selected="selected" value="1">1</option> </select> $('#select1').change(function () { if ($('#select1').val() > 5) { $('#select1').val(1); alert("Select set to 1"); } });
小提琴
如果用户从select控件中select10,则从控件自己的更改事件中重置为1。 这适用于我的台式机上的浏览器,但不适用于iPhone或iPad上的Chrome或Safari。 (实际上,在移动浏览器中,select设置为1,然后返回到10)
基本上,我试图限制用户在特定条件下可以select的内容。
有没有一种方法可以从自己的更改事件中重置select控件上的选项,并使其在移动浏览器中工作?
你需要通过[value=1]
selectoption
,或者给它一个类.default
作为例子。
$('#select_id').val(1);
然后刷新.selectmenu('refresh')
进行重新增强。
$('#select_id').selectmenu('refresh');
演示1 – 演示2