asp.net – 在设置了控件的选定值后运行Javascript
简单的ASP.NET应用程序
我有两个下拉控件.在第一次下拉时,我有一个JavaScript onChange事件. JavaScript启用第二个下拉列表并从中删除一个值(在第一个下拉列表中选择的值).如果他们单击下拉列表的空白第一个值,则将禁用第二个下拉列表(并重置选项). 我还在OnPreRender方法中有代码,它将根据第一个下拉列表的值启用或禁用第二个下拉列表.这样可以在代码中选择第一个下拉列表的值(加载用户设置). 我的问题是: >用户在第一个下拉列表中选择一些内容.第二个下拉列表将通过JavaScript启用. 我尝试通过ClientScript.RegisterStartupScript添加启动脚本(将设置第二个下拉列表的正确状态),但是当调用它时,第一个下拉列表的selectedIndex为0,而不是它实际上是什么.我的猜测是选择的值在我的启动脚本之后设置(但仍然没有调用onChange脚本). 关于尝试什么的任何想法? 解决方法<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void indexChanged(object sender,EventArgs e) { Label1.Text = " I did something! "; } </script> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Test Page</title> </head> <body> <script type="text/javascript"> function firstChanged() { if(document.getElementById("firstSelect").selectedIndex != 0) document.getElementById("secondSelect").disabled = false; else document.getElementById("secondSelect").disabled = true; } </script> <form id="form1" runat="server"> <div> <select id="firstSelect" onchange="firstChanged()"> <option value="0"></option> <option value="1">One</option> <option value="2">Two</option> <option value="3">Three</option> </select> <select id="secondSelect" disabled="disabled"> <option value="1">One</option> <option value="2">Two</option> <option value="3">Three</option> </select> <asp:DropDownList ID="DropDownList1" AutoPostBack="true" OnSelectedIndexChanged="indexChanged" runat="server"> <asp:ListItem Text="One" Value="1"></asp:ListItem> <asp:ListItem Text="Two" Value="2"></asp:ListItem> </asp:DropDownList> <asp:Label ID="Label1" runat="server"></asp:Label> </div> </form> <script type="text/javascript"> window.onload = function() {firstChanged();} </script> </body> </html> 编辑:替换整个代码.这甚至可以在您的用户控件中工作.我相信Register.ClientScriptBlock不起作用,因为您在该块中编写的代码是在调用window.onload之前执行的.并且,我假设(我不确定这一点)DOM对象当时没有设置它们的值.而且,这就是为什么你总是将selectedIndex作为0. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – MVC ASP.NET或Razor
- SOAP系列目录
- asp.net-web-api – Web API / MVC 6中的安全JSON Web令牌
- asp.net-mvc-3 – MVC Razor – 在一年中的12个月中使用@ H
- ASP.NET:如何在没有任何子域的情况下获取域名?
- asp.net-mvc – 发生异常后不要刷新会话 – NHibernate
- asp.net-core – 使用ASP.NET Core后端服务器验证Google访问
- ASP.NET通用提供商
- asp.net-mvc-3 – Editor用于收集我的模型中的项目
- asp.net-mvc – ASP.NET MVC.如何创建接受和multipart / fo
- asp.net-mvc – 使用AppFabric缓存在MVC Session
- asp.net – HTTP错误404.4 – 未找到您要查找的资
- ASP.NET AJAX AsyncFileUpload UploadedComplete
- asp.net – 从ASP .Net下载文件时,文本文件会附加
- asp.net-mvc – MVC导航到不同的控制器视图
- asp.net-mvc – 新手 – 将父视图和子视图合并到
- asp.net – Web.config – 自定义错误页面无效
- asp.net-mvc – ASP.NET MVC绑定模型中的数组
- asp.net-mvc-4 – WebAPI如何指定控制器将到达哪
- asp.net-mvc – 如何覆盖Orchard CMS中导航区域的