【问题标题】:Activate a dropdown option from another button/llink从另一个按钮/链接激活下拉选项
【发布时间】:2017-01-22 06:28:34
【问题描述】:

我一直在努力弄清楚如何做到这一点。我在无法控制代码的页面上有一个下拉菜单 -

<select name="dex_item" id="dex_item" onchange="dex_updateItem()">
<option value=1>2016</option>
<option value=4>2017</option>
<option value=5>2018</option>
</select>

我想创建一个简单的按钮/链接,单击该按钮/链接会激活其中一个选项。因此,例如,当我单击 #click 时,会选择选项 value=4。

我见过类似的例子,但什么都做不了......

【问题讨论】:

  • 提供您尝试过的代码,以便我们提供帮助
  • 哪些例子?能发个图片或gif吗?

标签: jquery select click dropdown


【解决方案1】:

您可以使用.prop()selected 属性添加到目标option

$("button").click(function(){
    $("select > option[value='4']").prop("selected", true);
    $("select").change();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="dex_item" id="dex_item" onchange="console.log('changed')">
    <option value=1>2016</option>
    <option value=4>2017</option>
    <option value=5>2018</option>
</select>
<button>click</button>

【讨论】:

  • 谢谢。它会更改下拉列表,但不会像我手动更改下拉列表那样执行。我假设与 onchange="dex_updateItem()"...有关?
  • @ScottEldo 如果你想触发更改事件,你应该使用$("select").change()jsfiddle.net/8453mufc
【解决方案2】:

也许我误解了,但要选择选择输入的值,您可以使用以下代码:

$("#click").click(function(e) {
  $("#dex_item").val('4');
});

https://jsfiddle.net/Tintin37/fmncst9L/

编辑

如果你想触发 onchange 事件,你可以这样做:

 $(function() {
   $("#click").click(function(e) {
     var select = $("#dex_item");
     select.val('4').trigger("change");
   });
 })

 function dex_updateItem() {
   alert("change");
 }

https://jsfiddle.net/Tintin37/z2bnvuru/

【讨论】:

  • @Ish 发布了这个解决方案。
【解决方案3】:

检查这个:https://jsfiddle.net/c2yusbka/

点击按钮后,您可以设置选择元素的值,然后相应地选择选项。

$('#click').click(function(){ 
   $("#dex_item").val("4");
});

$('#click').click(function(){ 
   $("#dex_item").val("4");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="dex_item" id="dex_item" onchange="dex_updateItem()">
  <option value=1>2016</option>
  <option value=4>2017</option>
  <option value=5>2018</option>
</select>
<button id="click">Click Here</button>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-12
    • 1970-01-01
    • 2020-02-28
    相关资源
    最近更新 更多