【发布时间】:2015-11-21 01:57:38
【问题描述】:
我想使用按钮模拟点击事件。我通过以下链接获得了启发。 Simulate click on select element with jQuery
在上面的线程上,这个小提琴在 chrome 上工作得很好。我遇到了与 Firefox 和 Internet Explorer 相同的问题。
我已经编辑了小提琴。这是小提琴,但它似乎不起作用。在这个小提琴中,我能够进入该功能,但实际的点击事件并未在选择时触发。我缺少一些代码,因此我的代码无法正常工作。任何有关填空的帮助。
这里是 HTML 代码。
<select id="dropdown">
<option value="Red">Red</option>
<option value="Green">Green</option>
<option value="Blue">Blue</option>
</select>
<br>
<button id="fire" type="button" onclick="runThis()">Show dropdown items</button>
这是 Javascript。
// <select> element displays its options on mousedown, not click.
showDropdown = function (element) {
var event;
event = document.createEvent('MouseEvents');
event.initMouseEvent('mousedown', true, true, window);
element.dispatchEvent(event);
};
// This isn't magic.
window.runThis = function () {
var dropdown = document.getElementById('dropdown');
//showDropdown(dropdown);
eventFire(dropdown, 'click');
};
function eventFire(el, etype) {
alert('hi');
if (el.fireEvent) {
el.fireEvent('on' + etype);
el[etype]();
} else {
var evObj = document.createEvent('Events');
evObj.initEvent(etype, true, false, window);
el.dispatchEvent(evObj);
}
}
我还找到了一些相同操作的参考资料。
HTML 文件
<button>Trigger the link below</button><br />
<a href="http://www.yahoo.com/" target="_blank">
http://www.google.com/</a> (new window)
<br>
<select id="dropdown">
<option value="Red">Red</option>
<option value="Green">Green</option>
<option value="Blue">Blue</option>
</select>
这是 javascript 文件。
function eventFire(el, etype) {
alert('hi');
if (el.fireEvent) {
el.fireEvent('on' + etype);
el[etype]();
} else {
var evObj = document.createEvent('Events');
evObj.initEvent(etype, true, false);
el.dispatchEvent(evObj);
}
}
document.getElementsByTagName("button")[0].onclick = function() {
var element = document.getElementsByTagName("select")[0];
eventFire(element, "click");
};
上面的小提琴也不起作用。 如果需要更多信息,请告诉我。
在小提琴之上,我是从 stackoverflow 本身引用的。由于我的帐户限制,我无法粘贴直接链接。
【问题讨论】:
-
更新了我身边的小提琴:jsfiddle.net/Pc8qE/77 和 jsfiddle.net/1nz9koar/1
-
自从我更新了两个小提琴但它不起作用。这意味着我缺少一段代码来触发选择上的点击事件。
-
@OscarJara : 你能帮忙吗?
标签: javascript jquery html select onclick