Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery-On按钮单击触发器选择选项_Javascript_Jquery_Html - Fatal编程技术网

Javascript jQuery-On按钮单击触发器选择选项

Javascript jQuery-On按钮单击触发器选择选项,javascript,jquery,html,Javascript,Jquery,Html,伙计们,我想问一下,当我点击按钮触发选择菜单中的选项选择时,如何在jQuery中创建函数 以下是我的HTML代码: <select id="target_menu" name="sort_by"> <option selected="selected" id="position" value="http://cosmeo.superweb.bg/index.php/priceslider/slider/view/?dir=asc&amp;id=35&am

伙计们,我想问一下,当我点击按钮触发选择菜单中的选项选择时,如何在jQuery中创建函数

以下是我的HTML代码:

<select id="target_menu" name="sort_by">
    <option selected="selected" id="position" value="http://cosmeo.superweb.bg/index.php/priceslider/slider/view/?dir=asc&amp;id=35&amp;max=424&amp;min=0&amp;order=position">Позиция</option>
    <option id="name" value="http://cosmeo.superweb.bg/index.php/priceslider/slider/view/?dir=asc&amp;id=35&amp;max=424&amp;min=0&amp;order=name">Име</option>
    <option id="price" value="http://cosmeo.superweb.bg/index.php/priceslider/slider/view/?dir=asc&amp;id=35&amp;max=424&amp;min=0&amp;order=price">Цена</option>
    <option id="color" value="http://cosmeo.superweb.bg/index.php/priceslider/slider/view/?dir=asc&amp;id=35&amp;max=424&amp;min=0&amp;order=color">Color</option>
    <option id="created_at" value="http://cosmeo.superweb.bg/index.php/priceslider/slider/view/?dir=asc&amp;id=35&amp;max=424&amp;min=0&amp;order=created_at">Дата</option>
</select>
当我点击按钮->点击我!我希望jQuery强制/触发在带有id target的select菜单上创建id的选项的选择

我的函数triggerChange应该是什么样子

伙计们,我该怎么做呢?

试试这个功能:

 function triggerChange(){
        $("#target_menu").val($("#target_menu #created_at" ).val());
        $('#target_menu').trigger('change');
   }

我为你做了这把小提琴

第一步是从以下位置创建id为的元素中获取值:

接下来,您需要为select元素设置选定值:

$('#target_menu').val(wantedValue).trigger('change');  // need to call .trigger('change') here
// you can also call .trigger() - without 'change' keyword
解释你为什么需要触发。改变

对于选择框、复选框和单选按钮,将触发事件 当用户使用鼠标进行选择时立即执行,但对于 其他元素类型将延迟事件,直到元素丢失 专注

谢谢你,伊莎蒂

$('.FirstFilter').click(function(){
       $("#position").removeAttr("selected");
       $("#created_at").attr('selected','selected');
    });

由于每个选项都应用了一个id,因此可以将该id作为目标,然后使用.prop方法

$(document).ready(function(){
 $(".firstFilter").click(function(){
    var id = $("#created_at").prop("selected","selected");   
 });
});
用这个

function triggerChange(){    
$("#target_menu").eq(4).prop("selected","selected");     
}

做这件事的方法很少。一个在下面。建议不要使用内联事件处理程序

$button.onclick,函数{ $target_菜单选项。过滤器功能选项,el{ 返回el.id==='created_at'&&&$el }.选择正确,正确; }; Позиция Име Цена 颜色 Дата 点击我! 功能触发变化 { $target_menu.val$created_at.val; } Позиция Име Цена 颜色 Дата 点击我!
好的,但它是否会更改并选择id为created_at的选项?我已经更新了ans。根据您的要求,您编写的内容仅在手动更改select元素时有效,并且无论用户将选择什么,它都会选择id为“created_at”的选项。他希望在单击按钮时将“created_at”设置为选中选项。你的答案对他有何帮助?谢谢@Kosmo我已经修改了答案为什么在没有捕获的情况下触发更改?在给出-1搜索之前:嗯,顺便说一下,我没有给出-1!您正在将更改转换为设置选定的值。OP想要的是通过单击按钮来设置所选值!所以,在这里,改变是不相关的,改变甚至不受选择的约束哦!对!:。。我明白你想说什么。当我读到他的问题时,我的头脑爆炸了:
$(document).ready(function(){
 $(".firstFilter").click(function(){
    var id = $("#created_at").prop("selected","selected");   
 });
});
function triggerChange(){    
$("#target_menu").eq(4).prop("selected","selected");     
}