我想在更改事件的java脚本中访问下拉菜单的变量,这是我的代码
<asp:DropDownList ID="DropDownList1" runat="server" onchange="document.location.href = url_Lookbook;" >
<asp:ListItem Value="0">hello</asp:ListItem>
<asp:ListItem Value="1">world</asp:ListItem>
</asp:DropDownList>
这是脚本编码:
<script type="text/javascript">
var url_Lookbook = "http://microsoft.com";
</script>
我的问题是如何将value = 0或value = 1传递给不同的页面,感谢任何帮助。
答案 0 :(得分:0)
这就是我的工作方式,完全在服务器端代码中。您不必使用javascript(如果您不需要)
<asp:DropDownList ID="ddlGlobalDestinations" runat="server" OnSelectedIndexChanged="ddlGlobalDestinations_SelectedIndexChanged" AutoPostBack="true">
<asp:ListItem Text="StackOverflow" Value="http://www.stackoverflow.com"></asp:ListItem>
<asp:ListItem Text="Google" Value="http://www.google.com/"></asp:ListItem>
<asp:ListItem Text="Microsoft" Value="http://www.microsoft.com/"></asp:ListItem>
</asp:DropDownList>
这是c#代码隐藏
protected void ddlGlobalDestinations_SelectedIndexChanged(object sender, EventArgs e)
{
Response.Redirect(ddlGlobalDestinations.SelectedValue, true);
}
答案 1 :(得分:0)
onchange =“document.location.href = url_Lookbook +'?param ='+ this.value;”似乎在FF3和IE7中有效。
答案 2 :(得分:0)
如果你把它写成javascript函数,那就更简单了
<asp:DropDownList ID="DropDownList1" runat="server" onchange="navFromList(this.value);" >
<asp:ListItem Value="0">hello</asp:ListItem>
<asp:ListItem Value="1">world</asp:ListItem>
</asp:DropDownList>
<script type="text/javascript">
function navFromList( qsParam )
{
document.location.href = "http://microsoft.com?arg=" + qsParam;
return false;
}
</script>