【问题标题】:Updating selected value of a dropdown list with jQuery in PyroCMS在 PyroCMS 中使用 jQuery 更新下拉列表的选定值
【发布时间】:2023-03-13 17:07:01
【问题描述】:

我在为 PyroCMS 开发一个模块时遇到了一个小问题。

我想使用 jQuery 动态更新下拉列表。 我想设置选定的选项,但它似乎不起作用,因为下拉列表不是浏览器的默认选项。

我试过这个:

$('select[name=item-type] option[value='+type+']').attr('selected', 'selected');

但用户界面没有更新。

【问题讨论】:

    标签: javascript select jquery-chosen pyrocms


    【解决方案1】:

    我终于找到了解决办法。

    下拉自定义 UI 由名为 Chosen 的插件提供支持。

    编辑 DOM 元素不会更新 Chosen 下拉 UI,因为此插件不会动态监视其附加的 <select>。您需要通过触发事件明确告诉 Chosen 您刚刚更新了 DOM。

    直到版本2.3 PyroCMS 使用Chosen 0.9,所以你可以这样触发事件:

    $('select.any-selector').trigger("liszt:updated");
    

    为了完整,选择 1.0 事件已更改,您必须使用:

    $("select.any-selector").trigger("chosen:updated");
    

    参考资料:

    【讨论】:

      【解决方案2】:

      我有办法

      需要进行两次更改

      使用

      $('.selector').chosen().change(function() { 
      }); 
      

      而不是

      $('.selector').change(function() { 
      }); 
      

      当你想更新下拉菜单时使用

      $('.selector').trigger("liszt:updated");
      

      然后给你... 玩得开心!!!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-09-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-30
        • 1970-01-01
        相关资源
        最近更新 更多