我有一个用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),我点击&#34; textbox1&#34;并且浏览器什么都不做。
感谢您的帮助。
答案 0 :(得分:3)
你应该替换它:
$('#textbox1')
用这个:
$('#<%=textbox1.ClientID%>')
您的文本框是服务器端控件。因此,您必须阅读ClientID
,以便读取ASP.NET生成的HTML标记的ID。有关详细信息,请查看here。通常如前面链接中所述:
当Web服务器控件呈现为HTML元素时,id HTML元素的属性设置为ClientID的值 属性
此外,您必须在开头script
代码</script>
之前删除结束script
代码<script>
。
答案 1 :(得分:0)
你的asp标签后面有一个额外的</script>
标签。
在没有它的情况下尝试相同的代码:
<script src="https://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>
在这里为我工作:https://jsfiddle.net/mutjg5sq/
答案 2 :(得分:0)
试试这个,希望它可以帮到你
脚本:
<script src="https://code.jquery.com/jquery-latest.min.js"type="text/javascript"></script>
HTML:
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server>
Jquery的:
<script>
$('#textbox1').click(function () {
alert('Hello');
});
</script>