引用js方法调用的另一个下拉值

时间:2011-11-04 20:20:34

标签: javascript asp.net

我正在尝试从另一个下拉列表(ddlColor)传入值,并将其选定的id和text值传递给ddlEngine的事件方法

<asp:DropDownList ID="ddlEngine" runat="server" onchange="GetSearchResults(ddlColor.value, ddlColor.text, this.options[selectedIndex].text);" />

我想我不能像这样引用ddlColor,我的语法中有些东西不对,我看不清楚。

这是我的尝试:

这是在js标记之后的页面顶部全局定义的:

var ddlColor = document.getElementById('<%=ddlColor.ClientID %>');

var colorid_dropdown = ddlColor.options[ddlColor.selectedIndex].value;
var colorname_dropdown = ddlColor.options[ddlColor.selectedIndex].text;

然后在我的下拉列表中,我试图将其附加到电话:

onchange="GetSearchResults("' + colorid_dropdown + ", " + "'colorname_dropdown + '" + ", this.options[selectedIndex].text);" 

2 个答案:

答案 0 :(得分:0)

尝试使用DropDownList的ClientID属性:

var ddl = document.getElementById('<%= ddlColor.ClientID %>');

更新:

在您更新的代码示例中,您似乎没有像使用ddlColor那样将ddlCar放入JS变量中。这可能是你的问题吗?

答案 1 :(得分:0)

将此定义为全局,位于页面顶部

var ddlColor = document.getElementById('<%=ddlColor.ClientID %>');

这是您的ddlEngine下拉列表

<asp:DropDownList ID="ddlEngine" runat="server" onchange="GetSearchResults(ddlColor.value, ddlColor.options[ddlColor.selectedIndex].text, this.options[selectedIndex].text);"></asp:DropDownList>
相关问题