Javascript jQuery mobile Multiselect不更新选定属性

Javascript jQuery mobile Multiselect不更新选定属性,javascript,jquery,html,jquery-ui,jquery-mobile,Javascript,Jquery,Html,Jquery Ui,Jquery Mobile,我有一个jQuery-mobile自定义multiselect,但是当我选择一个项目时,我们在HTML-select标记上有一个项目列表,但是它不会用selected属性更新 : 选择运输方式: 选择选项 标准:7天 高峰期:3天 快递:第二天 在夜间 默认情况下,JQuery Mobile不会更新所选属性以响应用户的输入。您可以使用以下代码使选定值与属性保持同步 $(function () { $('select').on('change', function (evt) {

我有一个jQuery-mobile自定义multiselect,但是当我选择一个项目时,我们在HTML-select标记上有一个项目列表,但是它不会用selected属性更新

:

选择运输方式: 选择选项 标准:7天 高峰期:3天 快递:第二天 在夜间
默认情况下,JQuery Mobile不会更新所选属性以响应用户的输入。您可以使用以下代码使选定值与属性保持同步

$(function () {
    $('select').on('change', function (evt) {
        var options = $(evt.target).children('option'),
            current;
        for (var i = 0; i < options.length; i++) {
            current = options[i];
            if (current.selected === true && !current.hasAttribute('selected')) {
                options[i].setAttribute('selected', '');
            }
            if (current.selected === false && current.hasAttribute('selected')) {
                options[i].removeAttribute('selected');
            }
        }
    });
});

请记住,这将适用于DOM中已有的所有selectmenu小部件。如果以编程方式添加事件处理程序,则还必须将事件处理程序添加到该小部件。

您可以使用$'select-choice-9'.val;获取所选值。为什么需要selected属性?您使用什么代码从select中检索所选选项值?我使用的是ASP.Net MVC,我希望使用DefaultModelBinder的格式,它通常接受以下模式:假设:选项名称之一的名称应为A[0].B[1].C[2].D[3],其中A,B,C和D是数组对象,也是我试图用这个控件实现的,如果我可以选择属性为selected的值,那将是一个好主意。但如果没有,我需要获取span的值,将其拆分并搜索每个选项属性,并在关闭弹出窗口后通过附加事件进行更新UI@Tito我尝试了一个示例,DefaultModelBinder接受select的值列表,没有问题。您根本不需要选择的属性,但我发布了一个解决方案,以防您需要它。