触发内联onchange javascript

问题描述 投票:1回答:3

我正在编写一个greasemonkey脚本,可以创建一个自动完成的搜索类型框,从而可以更轻松地从网页上的大型下拉列表中进行选择。下拉列表具有内联onchange代码,当我使用javascript更改选择时,似乎无法触发。有任何想法吗?

javascript greasemonkey userscripts
3个回答
1
投票

假设页面有类似的东西:

<input onchange="someFunction()">

然后您的Greasemonkey JavaScript可以更改输入值,然后使用以下命令调用该函数:

unsafeWindow.someFunction();

0
投票

你可以“真的”触发onchange:

从GM内部:

unsafeWindow.dropdownObject.onchange();

从网页:

dropdownObject.onchange();

0
投票

对于tampermonkey,这可以在不使用unsafe窗口的情况下工作。

假设下拉框在网页中定义如下:

<select id="dd_id", onchange="myfunction()">

然后在usercript中的以下代码触发onchange事件:

document.getElementById('dd_id').onchange();

此外,建议避免在文档中使用unsafewindow。

© www.soinside.com 2019 - 2024. All rights reserved.