我有动态选择下拉菜单。例如,如果您选择特定月份,则第二个选择元素将填充该月份的天数。
这可以按预期工作,但是当用户在iPhone上并使用Mobile Safari的“表单助手”中内置的“下一步”按钮时,change
事件(使用jQuery)似乎不会触发第二个选择不会更新。
$('.month').change(function() {
// update "days" select element
});
仅供参考我也在使用jQuery mobile
答案 0 :(得分:5)
您还可以绑定一些其他事件,例如blur
(不知道模糊是否会触发iphone)
$('.month').bind('change blur',function(){
});
或者你试过了吗?
$('.month').live('change',function(){
});
答案 1 :(得分:2)
我能找到的最佳解决方案是基于这篇文章......
使用插件(来自上面的链接),我必须在使用Mobile Safari的“表单助手”选择一个选项后立即将选择菜单强制为blur
。
但是我注意到,当蛮力测试这些菜单时,额外的blur
事件会在几次来回选择后触发。额外的focus
似乎解决了这个问题。
$('select').quickChange(function () {
$(this).blur();
$('select').focus(); // somehow prevents an extra blur from firing on focus
});
使用单独的change
功能,我正在动态更新第二个选择菜单。
$("#select-choice-month").change(function () {
// update second select dynamically
});
*目前仅在Mobile Safari / iOS 5.0.1上测试过。