jquery 移动 select 不刷新小部件

jquery mobile select not refreshing widget

我在这上面卡了一天..主要问题是,我无法获得 selectmenu 的 jqm 小部件来正确反映 "selected" 条目。

我 select 第二个选项,然后重置..所以它 returns 到第一个选项。好的! 虽然它第二次不起作用。为什么不?源代码正确指出第一个选项是 "selected",但未显示。 重新加载页面后,它再次运行...

最重要的是,如果我在 jqm 弹出窗口小部件中使用 select 菜单,它甚至一次都不起作用。我假设这两个问题是相关的。

function reset() {  
    $('#myselect option[value="1"]').attr("selected", true);
    //$('#myselect').selectmenu();
    $('#myselect').selectmenu('refresh');
}

<div class="ui-field-contain">
    <label for="myselect">Basic:</label>
    <select  name="select-native-1" id="myselect">
        <option value="1">The 1st Option</option>
        <option value="2">The 2nd Option</option>
        <option value="3">The 3rd Option</option>
        <option value="4">The 4th Option</option>
    </select>
</div>

<button onclick="reset();">Reset</button>

示例:https://jsfiddle.net/0v5f6m88/12/

提前致谢!

这对我有用:

function selectReset() {    
  $('#myselect').val("1");
    $('#myselect').selectmenu('refresh', true);
}

至于为什么您的原始代码不起作用,这与 jquery 移动设备如何处理 selected 值有关。如果您在 select 值时查看原始 select,则该选项没有 'selected' 属性。我想这与此有关,但不确定为什么它第一次起作用。