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 – ASP.Net MVC:发送JSON到控制器
- (*)真的很贵吗?
- 使用ASP.NET MVC 3助手的标题属性的渲染跨度标签
- asp.net – IIS在编译的.net站点中查找.cs文件
- App_GlobalResources(ASP.NET)中的子文件夹
- asp.net-mvc – ASP.net MVC DropDownList预选项目被忽略
- asp.net – 如何防止CPU占用100%,因为iis中的工作进程
- asp.net-mvc-3 – ASP.NET MVC 3 – 验证问题
- asp.net – 如何在Button Click事件上调用此Jquery函数?
- asp.net – scriptresource.axd 404错误在asp net 4应用程序
- asp.net-mvc – 在部分视图中传递参数 – MVC3 /
- asp.net-mvc – MVC传递ID由“”分隔为动作
- asp.net-mvc – 具有输出参数的ExecuteSqlComman
- asp.net-mvc – 如何在Visual Studio 2015中快速
- asp.net jquery+ajax异步刷新实现示例
- asp.net-mvc – MVC 5 OWIN登录声明和Antiforger
- 如何使用ASP.NETC#从服务器端确定浏览器类型?
- asp.net-core – Asp.net Core中的Web应用程序与
- .net – 将数据写入App_Data
- asp.net – 关闭/停止浏览器或选项卡关闭时的会话
