jQuery打开选择按钮

如何按按钮打开选择下拉列表?

$('button').on('click', function() { $('select').trigger('click'); }); 

我的代码: http : //jsfiddle.net/UGkWp/

更新:
我找到了webkit浏览器的解决方案,但只有这些浏览器: http : //jsfiddle.net/UGkWp/2/也许你知道在每个浏览器中这是怎么做的?

 (function($) { "use strict"; $.fn.openSelect = function() { return this.each(function(idx,domEl) { if (document.createEvent) { var event = document.createEvent("MouseEvents"); event.initMouseEvent("mousedown", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); domEl.dispatchEvent(event); } else if (element.fireEvent) { domEl.fireEvent("onmousedown"); } }); } }(jQuery)); $('#country').openSelect(); 

http://jsfiddle.net/yqs90jdw/

你可以用这样的CSS做到这一点:

   

访问此小提琴了解更多详情: https : //jsfiddle.net/ssjuma/1mkxw2nb/1/

我想你应该看看这个页面:

我可以使用jQuery打开下拉列表吗?

似乎不可能直接执行此操作,但存在模拟您要执行的操作的工具。

一个简单的解决方案是使用jquery的“选择”-plugin: http ://harvesthq.github.io/chosen/

这也为您提供了一些优于普通选择的优点,并且易于使用。

在此,您可以简单地触发“mousedown”事件,如下所示:

 $('#dropdown_id_chzn').trigger('mousedown') 

鉴于您已在页面上选择(和jquery),以下代码应该可以解决问题:

HTML:

  

JavaScript的:

 $('select[name="foo"]').chosen(); $('#foo_chzn').trigger('mousedown'); 

请注意,selected会自动将“_chzn”附加到您的下拉列表名称,这是您应该在选择器中使用的名称

这对我有用

$( ‘选择’)专注()。

希望这个帮助

   $("button").click(function () { var size = $('#s option').size(); if (size != $("#s").prop('size')) { $("#s").prop('size', size); } else { $("#s").prop('size', 1); } }) 

我想这会对你有所帮助..

Trigger documentation

 $('button').on('click', function() { $('select').trigger('click'); }); $('select').click(function(){ alert($(this).val()); }); 

Here小提琴