如何在 JQUERY MOBILE 中刷新选择菜单



我正在使用JQuery创建一个Web表单。

我想使用链接将以前的选择字段复制到另一个选择字段中。 我让它更改 DOM,选择1.selected索引的值已更改。 但是,它仍然直观地显示旧值。 显然,您需要刷新它,以便它在视觉上更新。我不明白我一直在阅读的刷新方法的语法。这就是我尝试这样做的方式,但它不起作用。

这是链接的 HTML

    <select name="entry.14.single" id="entry_14">      
      <option value="1"></option>      
      <option value="2">2</option>       
      <option value="3">3</option>       
      <option value="4">4</option>       
      <option value="5">5</option></select> 
    <select name="entry.16.single" id="entry_16">      
      <option value=1""></option>      
      <option value="2">2</option>      
      <option value="3">3</option>       
      <option value="4">4</option>       
      <option value="5">5</option></select> 
    <a href="#" onclick="setSelect('entry_16', 'entry_14');return false;">Same as above</a>

这是我的JavaScript:

    function setSelect(id1, id2){
      var select1 = document.getElementById(id1); 
      var select2 = document.getElementById(id2); 
      select1.selectedIndex = select2.selectedIndex;
      $('#select1').selectmenu('refresh');
    } 

有人可以告诉我为什么我的刷新语句不起作用吗?

附言我知道在同一问题上还有其他线程,我也阅读了"文档"。 请不要将我链接到其他地方。我已经阅读了其他来源,但它没有让我得到任何地方。请告诉我要更改哪些内容以使刷新正常工作。

编辑:这是一个你可以搞砸的jsfiddlehttp://jsfiddle.net/AFzqt/7/

利用 jQuery 事件处理程序!

您正在寻找的功能是:

selectmenu("refresh")

在您的示例中,它看起来像这样:

$(function() {
    $("#changeButton").on("click", function(e) {
        $("#entry_16").val($("#entry_14").val());
        $("#entry_16").selectmenu("refresh");
        e.preventDefault();
    });
});

http://jsfiddle.net/AFzqt/8/

最新更新