html - Safari iOS 7 中的多项选择

标签 html select mobile safari ios7

当我在选择下拉列表中使用多个选项时 - Safari 会遇到奇怪的问题。当我选择一个选项并说完成时,下拉列表会返回显示“0 项”。但是如果我选择多个选项(不止一个),除了第一个选项之外的所有选项都会被选中。在此之后,如果我取消选择所有选项,最后一个将保持选中状态。

检查 this for a demo在 iOS 7.0.3 上使用 Safari。

<select multiple="multiple">
<option value="1">option 1</option>
<option value="2">option 2</option>
<option value="3">option 3</option>
</select>

我看过http://www.thecssninja.com/html/optgroup-ios6 ,但这谈到了使用 optgroups 的问题——它(当与多个一起使用时)目前似乎完全崩溃了 safari。

最佳答案

    // hack for iPhone 7.0.3 multiselects bug
    if(navigator.userAgent.match(/iPhone/i)) {
        $('select[multiple]').each(function(){
            var select = $(this).on({
                "focusout": function(){
                    var values = select.val() || [];
                    setTimeout(function(){
                        select.val(values.length ? values : ['']).change();
                    }, 1000);
                }
            });
            var firstOption = '<option value="" disabled="disabled"';
            firstOption += (select.val() || []).length > 0 ? '' : ' selected="selected"';
            firstOption += '>&laquo; Select ' + (select.attr('title') || 'Options') + ' &raquo;';
            firstOption += '</option>';
            select.prepend(firstOption);
        });
    }

关于html - Safari iOS 7 中的多项选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20039194/

相关文章:

php - 在组合框中一次选择两个 - 如何解决?

javascript - ERROR 403 (Forbidden) 当 HTML 包含 CSS 和 JS 等资源时

MySQL select count(*) 函数查找所有带 OPEN 的状态

Python 在字符串列表中的搜索模式

php - MySQL 选择分组依据和排序依据

html - 我可以在移动浏览器中访问用户麦克风吗?

javascript - 试图删除表格的行

jQuery 脚本有时被假设值为 0 的变量破坏

javascript - Flexslider 使用 jQuery Mobile 加载一次

c# - .ics 文件无法在适用于 Apple 设备的 Chrome Mobile 中打开