【问题标题】:Selecting an option using fancy select使用花式选择选择一个选项
【发布时间】:2014-03-05 16:26:30
【问题描述】:

我有一个花哨的选择,其代码类似于以下代码,但将selected=selected 属性添加到其中一个选项(使用 JS)不会改变当前选择的项目。

<li class="field">
  <div class="picker">
    <select>
      <option value="#" disabled>Favorite Doctor…</option>
      <option>Colin Baker</option>
      <option>Sylvester McCoy</option>
      <option>Paul McGann</option>
      <option>Christopher Eccleston</option>
      <option>David Tennant</option>
      <option>Matt Smith</option>
    </select>
  </div>
</li>

如何更改所选选项并将此更改反映在选择框中。

【问题讨论】:

    标签: javascript jquery gumby-framework


    【解决方案1】:

    设置选择选项后尝试触发change事件,例如:

    $('option:eq(2)').prop('selected',true).trigger('change'); // or .change()
    

    Fiddle Demo

    【讨论】:

    • 工作并且比我的方法更干净。谢谢!
    • 很高兴它有帮助!快乐的编码伙伴:-)
    【解决方案2】:

    通过将select.val() 设置为我要选择的选项的文本来解决它。

    【讨论】:

      【解决方案3】:

      我通过修改 FS 的代码解决了这个问题。它使用:selected 作为选择器。将其更改为 [selected="selected"] 并表现良好。在我看来,最好完全避免 FS。我在我正在进行的项目中继承了它。

      在我的副本中的第 56 行左右,现在改为:

      triggerHtml = settings.triggerTemplate(sel.find('[selected="selected"]'));
      

      【讨论】:

        猜你喜欢
        • 2020-12-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-15
        • 1970-01-01
        • 1970-01-01
        • 2018-11-09
        相关资源
        最近更新 更多