我试图让JQuery事件在ASP.NET MVC中使用部分视图。但是,通过Ajax加载部分视图后,JQuery似乎无法为部分视图中的任何元素触发事件。我怀疑如果您使用其他框架或JavaScript库加载部分HTML代码与Ajax,也会发生此问题。
例如,考虑以下示例:
控制器:
public class TestController : Controller { public ActionResult Index() { return View(); } public ActionResult LoadPartialView() { return View("PartialView"); } }
的Index.aspx
<script type="text/javascript"> $(document).ready(function() { $("#button").click(function() { alert('button clicked'); }); }); </script> <div> <%using(Ajax.BeginForm("LoadPartialView",new AjaxOptions { UpdateTargetId="PartialView"})){ %> Click <input type="submit" value="here" /> to load partial view. <% } %> </div> <br /><br /> <% Html.RenderPartial("PartialView"); %>
PartialView.ascx
<div id="PartialView"> Click <input type="button" id="button" value="here"></input> to display a javascript message. </div>
页面第一次加载后,您可以点击“点击此处显示一条Javascript消息”,您将收到一条Javascript按钮,提示“按钮被点击”。但是,一旦点击“点击这里加载部分视图”,点击应该带来Javascript警报消息的按钮没有任何影响。
似乎“点击”事件不再被触发。
解决方法
原文地址:https://www.jb51.cc/jquery/181802.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。