局部视图我有以下布局 使用jQuery与asp.net的MVC 4
父视图是由几个PartialViews如图片ilustrated的视图。其中一个列表中的每个项目都有一个对应的编辑按钮,可以将该项目加载到另一个PartialView中,但这是通过ajax加载到模态对话框引导程序中的。这部分工作正常。
我遇到的问题是没有执行与此模式控件相关的脚本或jquery事件。例如,datepicker小部件永远不会显示,无法捕获下拉列表的更改事件,或者捕获窗体的提交事件或提交按钮的单击事件。 所有脚本都放在主视图中。例如这是模态的事件处理程序提交:
$(function() {
$('#myModal form').on('submit', function() {
console.log("okk");
clearErrors();
$.post($(this).attr('action'), $(this).serialize(), function (data, status) {
$('#myModal').modal('hide');
$("#details").html(data);
}).error(function (error, status, a, b) {
$('.modal-body p.body').html(error.responseText);
});
return false;
});
});
在我_Layout.cshtm我已经包含了必要的脚本(我认为):
@Scripts.Render("~/js")
@Scripts.Render("~/bundles/globalization")
@RenderSection("scripts", required: false)
</div>
</body>
其中“〜/ JS”是:
bundles.Add(new ScriptBundle("~/js").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/jquery-migrate-{version}.js",
"~/Scripts/bootstrap.js",
"~/Scripts/bootstrap-datepicker.js",
"~/Scripts/jquery.validate.js",
"~/scripts/jquery.validate.unobtrusive.js",
"~/Scripts/jquery.validate.unobtrusive-custom-for-bootstrap.js",
"~/Scripts/locales/bootstrap-datepicker.es.js"
));
什么可能是我的脚本和jQuery的这个对话框的问题?到目前为止,网站中类似问题的指示对我来说还没有奏效。
我试图尽可能清楚地表达,如果有什么不明白的代码或插图我都耳朵。谢谢
会发生什么事,当你调试JavaScript?例如'$('#myModal form')'是否返回任何项目? –
@DavidTansey,我只是试图脚本移动到局部,但我得到的错误“$未定义”在Firebug控制台 –
@AlexeiLevenkov,该事件永远不会被执行:( –