起初我收到此错误:cannot call methods on dialog prior to initialization
。但是对解决方案的一些建议是将context: this,
添加到ajax调用。
在我开始使用部分视图而不是视图
之后,整个问题就开始了这是我的代码:
$("#ContactDialog").dialog({
autoOpen: true,
hide: "fade",
show: "bounce",
height: $(window).height() / 2,
width: $(window).width() / 2,
title: "Send email",
open: function () {
},
buttons: [{
text: "Send", click: function () {
$.ajax({
url: url,
type: "POST",
data: {},
context: this,
contentType: 'application/html; charset=utf-8',
dataType: "html", //xml, json, script and html
success: function () {
$(this).dialog("close");
},
对话框将关闭,但只有在单击按钮2之后。我也尝试过:
$("#contactDialog").dialog("close");
是否与加载js文件有关?
该脚本在_Layout.cshtml
中引用,如下所示:
<script src="~/Scripts/OwnedScripts/ContDia.js"></script>
我也尝试将其移至Partial视图,但没有运气 任何人都知道可能是什么问题? 如果可能的话,我想在没有黑客的情况下解决这个问题: - )