我有一个用 VS 2013 编写的 asp.net web 应用程序。该应用程序有嵌套的母版页,主母版页有以下代码:
<!DOCTYPE html>
<script src="http://code.jquery.com/jquery-latest.min.js"
type="text/javascript"></script>
我的网络表单还包含以下代码:
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
</script>
<script type="text/javascript">
$(document).ready(function () {
$('#textbox1').click(function () {
alert('Hello');
});
});
</script>
<div class="form-group">
<label class="control-label">Name</label>
<input type="text" id="textbox1" class="form-control" placeholder="Name" maxlength="50" runat="server">
</div>
当我构建项目并在浏览器(ie 或 chrome)上运行时,我单击“textbox1”,浏览器什么也不做。
感谢您的帮助。
最佳答案
你应该替换这个:
$('#textbox1')
用这个:
$('#<%=textbox1.ClientID%>')
您的文本框是服务器端控件。所以你必须阅读 ClientID
, 以便读取由 ASP.NET 生成的 HTML 标记的 ID。更多信息请查看here .通常如上一个链接中所述:
When a Web server control is rendered as an HTML element, the id attribute of the HTML element is set to the value of the ClientID property
此外,您必须删除关闭 script
标签,</script>
,就在开幕前script
标签,<script>
你的脚本。
关于javascript - jquery 点击功能不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44512696/