javascript - JQuery:如何使用 FancySelect 插件强制选择选项为 "selected"?

标签 javascript jquery jquery-plugins

我有一个直接的问题:如何使用 FancySelect 插件使“selected”成为 select 的一个选项?

这是情况:我有一个带有两个选项和两个链接的选择。链接应与选择同步。这意味着当点击一个链接时,它必须使“selected”成为选择的一个选项。

不管怎样,重要的是要注意它不是一个普通的选择,但我正在使用一个名为 FancySelect 的 JQuery 插件:http://code.octopuscreative.com/fancyselect/ 这可能是在 StackOverflow 其他地方找到的正常解决方案不适用于我的具体案例的主要原因。 所以重点不是如何让“selected”成为select的一个选项,而是如何在使用FancySelect插件时让它“被选中”。

在这里你可以更好地理解:

http://jsbin.com/AqoYucAG/11/edit

这是我正在尝试使用的代码,但还不能正常工作:

$( "#a1" ).click(function() {

     $("#selector option:first").attr('selected','selected');
 });

你能告诉我如何强制“选择”选择的选项吗? 非常感谢!

最佳答案

您似乎在使用选择插件。所以通常他们将底层的 select 转换为 div/spans 等以获得良好的外观和感觉。因此,当您更改选择选项时,您需要通知插件您已更新它。在这种情况下,您似乎可以触发 change/update 事件来执行此操作。当您将选项动态添加到选择时,您需要做同样的事情(触发 update),以便插件得到更新。

所以尝试:

$( "#a1" ).click(function(e) {
   e.preventDefault();
   $("#selector").val("1").trigger('change');
});

根据如下所示的插件代码,它会在触发更改时更新文本。

sel.on('change', function(e) {
    if (e.originalEvent && e.originalEvent.isTrusted) {
      return e.stopPropagation();
    } else {
      return updateTriggerText();
    }
  });

关于javascript - JQuery:如何使用 FancySelect 插件强制选择选项为 "selected"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20474517/

相关文章:

javascript - 从 Knockout 可观察数组中删除表中的选定行

c# - ASP.NET MVC : How do I change where Ajax. BeginForm 将在页面加载后发布到?

javascript - jqPlot X轴渲染

jquery - 将 Jquery 插件添加到 Backbone + require.js 代码

javascript - 带有动态单选按钮的必需属性(ng-repeat)

javascript - 为从最后一张幻灯片到第一张幻灯片的无限滚动添加滑动过渡

javascript - 如何调用 Controller 方法并更新 View ?

javascript - fadein() 在 fadeout() 之后不起作用

jquery - 我对 jQuery 插件的第一个想法

javascript - 使用 Parsley.js 验证选择的多项选择