onClick bind to Url.ActionLink只在第一次工作
onClick bind to Url.ActionLink only works first time
所以我有一个Url.ActionLink
,当点击时,我想加载一个部分视图到一个模态。这是第一次工作,但第二次它重定向到浏览器的部分视图,而不是加载到一个模态,和modal()
调用有一个错误,说它是undefined
。
div的html是:
<div class="modal fade" id="modal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body" id="modalBody"></div>
</div>
</div>
</div>
到目前为止绑定/加载的代码是:
$(".actionLink").on("click", function (e) {
e.preventDefault();
$("#modalBody").load(e.target.href);
$("#modal").modal('show');
return false;
});
我在重定向之前得到的错误是在$("#modalBody").load(e.target.href);
上,错误是"Uncaught TypeError: undefined is not a function."
它是第一次点击链接,所以我不知道为什么它第二次是未定义的。
.on()类型的绑定只适用于脚本初始化之前创建的元素。
因此,如果在on click函数中动态加载一些内容,on()绑定将无法对该内容起作用。
一种解决方案是,将click事件绑定到容器元素,在容器元素中加载新内容,像这样:
$("#container").on("click", ".actionLink", function(e) { ... });
事件处理程序仅绑定到当前选定的元素;它们必须在您的代码调用。on()时存在于页面上。jQuery .on() doc
相关文章:
- Javascript:JSON请求仅在第一次工作
- 让jqGrid第一次工作
- show-hide只在ajax调用中第一次工作
- $(this) .prop() 只在第一次工作
- 复选框选择/取消选择触发器第一次工作,但在随后的尝试中失败
- 光滑的滑块只在Jquery Mobile中第一次工作
- Gulp-rev:不是第一次工作,而是在第一次工作之后工作
- NG-CLICK功能仅在第一次工作
- jQuery Animation只是第一次工作
- jquery .load() 函数仅在第一次工作
- 加载ajax的Javascript只能在第一次工作
- 我的node.js http请求第一次工作,现在它显示了一些错误
- Jquery ajax调用只在第一次工作
- 在jquery 1.3.2中反复工作的Ajax只在1.7.1中第一次工作
- 对象搜索只在第一次工作
- addEventListener只在第一次工作
- 动画只在第一次工作
- AngularJS和Fullcalendar: eventClick只在第一次工作
- 无法调用$stateProvider两次来更新视图(它只在第一次工作)
- 调用js函数只能在jquery手机上第一次工作