Ali*_*sam 11 javascript jquery select
所以我可以看到select元素的选项,但我需要点击它.如果我想使用某个功能怎么办?当发生某些事情时,应选择此选择元素,表示列表已打开,我可以看到选项.我不希望用户点击选择元素,我想要其他东西来打开它.
我试过的
$("select").select();
$("select").click();
$("select").focus();
Run Code Online (Sandbox Code Playgroud)
有一个select元素,通常如果你想打开它(下拉列表),你点击它.我想要的是打开它,如果我点击一个DIV
或其他任何东西.我希望打开此下拉列表,而无需用户单击select元素.
noo*_*oob 22
这应该工作:
var element = $("select")[0], worked = false;
if (document.createEvent) { // all browsers
var e = document.createEvent("MouseEvents");
e.initMouseEvent("mousedown", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
worked = element.dispatchEvent(e);
} else if (element.fireEvent) { // ie
worked = element.fireEvent("onmousedown");
}
if (!worked) { // unknown browser / error
alert("It didn't worked in your browser.");
}
Run Code Online (Sandbox Code Playgroud)
这里只是一个更新,因为接受的答案是正确但过时的,initMouseEvent
很快就会被弃用.[见:https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/initMouseEvent]
请改用以下内容:new MouseEvent
[参见:https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/dispatchEvent]
示例代码:
var el = $('select'); // grab the input (jQuery)
var event = new MouseEvent('mousedown'); // create the event listener
el.dispatchEvent(event); // attach the event listener to the element
Run Code Online (Sandbox Code Playgroud)