我刚刚开始使用ASP.Net MVC4项目。我想在我的项目中使用jQuery进行点击事件,但即使我在layout.cshtml和Index(home)页面中包含jQuery,我也无法获得成功,
指数(家):
@Scripts.Render("~/bundles/jquery")
$("#searchId").click(function () {
alert("Serach was clicked.");
});
Layout.cshtml:
<body>
@Scripts.Render("~/bundles/jquery")
<p><input type="button" value="search" id="searchId" /></p>
</body>
有人可以帮我解决一下吗?
答案 0 :(得分:2)
在注册事件处理程序时,您的DOM可能还没有准备好,请尝试将事件处理程序封装在文档就绪中
$(document).ready(function(){
$("#searchId").click(function () {
alert("Serach was clicked.");
});
});
此外,我没有看到你的布局中调用@RenderBody()方法,这也可能会给你一个错误。
答案 1 :(得分:0)
首先,你在Index和Layout页面中渲染Jquery包2次。
由于Layout.cshtml是一个母版页,因此您必须将Jquery软件包仅放在母版页中而不是子索引页中。
在子索引页面中,只需使用以下代码:
$(document).ready(function(){
$("#searchId").click(function () {
alert("Serach was clicked.");
});
});
或
$( "#searchId" ).on( "click", function() {
alert("Serach was clicked.");
});
如果您仍然遇到问题,请告诉我。