在onload函数中触发onchange事件

Triggering an onchange event within an onload function

本文关键字:onchange 事件 onload 函数      更新时间:2023-09-26

我有一个带有两个下拉菜单的网页。第一个(id = ddlIndustry)有一个"Go"按钮,从下拉菜单中选择一个选项后会刷新页面。一旦完成,就可以在第二下拉菜单(id = region)中进行选择。它有一个onchange属性,该属性在进行选择时被触发并刷新页面。

我正在尝试用Javascript编写一组命令,从第一个下拉列表中选择一个选项,单击"Go"按钮,刷新页面后,从第二个下拉列表选择一个选择,并通过程序触发onchange事件。

到目前为止,我的代码是:

document.all.ddlIndustry.selectedIndex = 21;
document.getElementById("cmdChart").click();
window.onload = function(){
    document.all.region.selectedIndex = 2;
    document.all.region.onchange();
};

这使我可以选择ddlIindustry索引并按"Go",但不会选择区域并触发onchange事件。然而,当我选择一个行业并手动按下go时,代码的第二部分:

document.all.region.selectedIndex = 2;
document.all.region.onchange();

确实允许我选择一个区域并触发onchange事件。

我怎么能同时做这两件事?

编辑:我在Chrome(版本37.0.2062.120 m)和IE(版本11.0.9600.17280)中都尝试过这个

我认为,如果你写下面给出的东西,就会奏效。

region.selectedIndex = 2;
region.onchange();

你也可以试试这个:

var body_Onload = function(){
    document.all.region.selectedIndex = 2;
    document.all.region.onchange();
};

在HTML中,将此函数作为添加到body标记中

<body onLoad="body_Onload">
...
...
</body>