在页面加载时将Javascript添加到ASP Dropdownlist
Adding Javascript to ASP Dropdownlist on page load
我正在开发一个不使用UpdatePanel
的交互式web表单,所以我尝试使用JavaScript来完成大部分功能。对于这个问题,我试图弄清楚如何使用java脚本将函数添加到PageLoad()上的下拉列表中。
我有以下ASP文件:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="Default.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
</head>
<body>
<form id="form1" runat="server">
<div>
Discovery Form Templates
<asp:DropDownList ID="uiFormTemplates" runat="server" DataTextField="Subject" DataValueField="DiscoveryFormID" AppendDataBoundItems="true" OnChange="GetTemplateValue();">
<asp:ListItem Text="--Select One--" Value=""/>
</asp:DropDownList>
</div>
<div id="ChangePlate"></div>
</form>
</body>
</html>
然后这个javascript:
function GetTemplateValue()
{
var dropdown = document.getElementById("uiFormTemplates");
var SelectedOption = dropdown.options[dropdown.selectedIndex].value;
if (SelectedOption == null) {
document.getElementById("ChangePlate").innerText = "There is nothing here.";
}
else {
document.getElementById("ChangePlate").innerText = dropdown;
}
}
我正在尝试使用以下javascript:
$(document).ready(function () {
$("#uiFormTemplates").onchange(function () { GetTemplateValue(); });
});
当我从dropdownlist
中删除OnChange="GetTemplateValue()"
时,即使使用第二个javascript方法,也不会发生任何事情。是我把代码写错了,还是我甚至没有从正确的角度来处理这个问题?无论是对代码的批评还是一些指导现在都会有所帮助,我是一个js noob。
假设您包含jQuery(您正在使用),则没有onchange
方法。您必须将其更改为on('change', ...)
,或者使用change
方法。此外,#uiFormTemplates
不应该工作,您必须使用控件的ClientID
因此:
$(document).ready(function () {
$("#<%= uiFormTemplates.ClientID %>").on('change', function () { GetTemplateValue(); });
});
或者:
$(document).ready(function () {
$("#<%= uiFormTemplates.ClientID %>").change(function () { GetTemplateValue(); });
});
相关文章:
- 使用ASP.NET将谷歌地图添加到项目中,并从数据库中检索位置
- 如何在ASP中为用户控件添加Javascript对象网
- 在不刷新整个网格的情况下,向Asp.net网格视图添加新行
- 将调色板添加到ASP.NET文本框中
- 向ASP控件添加自定义事件
- 如何使用javascript在asp.net网页表单上动态添加文本框
- 在带有 bootbox 的自定义对话框中添加选项以选择表单控件.js在 ASP.NET MVC 中
- 仅当条件为真时,才将客户端单击确认添加到 asp.net 按钮
- 将多个组添加到 SignalR ASP.NET
- 我无法在 asp.net 动态添加的复选框中“设置选中”
- 添加/单击c#asp.netmvc5后禁用和更改按钮图标
- 无法使用asp.net mvc将数据添加到数据库中
- 使用JavaScript将日期/时间添加到我的asp.net用户控件中
- 基于使用的ASP MVC EditorFor/Partial模板添加JavaScript引用
- 向asp.net生成的链接添加确认javascript
- javascript在asp.net中的文本框中添加2个数字,不起作用
- Jquery 在 ASP 文本框上添加样式不起作用
- 从 JQuery 添加 asp.net 自定义用户控件
- 如何通过 javascript 添加 ASP 下拉列表值
- 当添加ASP代码时,导航在移动中消失,其他脚本在页面上冻结