在asp.net mvc 3中我有一个页面,其中有两种形式。它们包含标签,文本框和下拉列表。在IE6上的sumbiting表单(在成功提交新窗口时必须打开,提交是ajax post action)出现弹出窗口阻止程序通知。当通知出现时(或者有时在关闭窗口顶部的通知之后,可能是因为缓存,可能)所有形式的内容除了下拉列表(!?)消失之外。在关注下拉菜单然后点击其他内容必须放置的地方之后,它会部分出现。
我正在使用jquery 1.5.2,jquery validate plugin和jquery.ajax。
提交按钮:
<div class="button">
<input type="submit" value="Sumbit" />
</div>
回调:
onSuccess: function (response) {
var jsonResult = eval("(" + response.responseText + ")");
hideStatusMessage();
if (jsonResult.Success) {
//StatusMessage is span that displays result of submit
showStatusMessage(jsonResult.Message);
redirectTo(jsonResult.RedirectTo);
} else {
// We got some error
showStatusMessage(jsonResult.Message);
}
}
重定向:
var redirectTo = function (urlString) {
var params =
"width=" + screen.width + ", height=" + screen.height +
", top=0, left=0, fullscreen=yes, location=no";
var newWin = window.open(urlString, '_blank', params, false);
}
答案 0 :(得分:0)
因为我看不到整个代码,所以我会采取预感。我认为该页面正在尝试POST到其当前位置。这种刷新页面但不完全。这可能是您从文本框中删除内容时遇到的问题。
如果是这种情况,您将需要阻止提交按钮在预期此弹出窗口时发布。您可以通过在事件上调用stopPropagation或从按钮单击时执行的函数返回false来执行此操作。如果您有权访问该事件,请首选stopPropagation方法。