我的asp.net mvc中有以下脚本: -
function deleteconfirmation() {
jAlert('The Answer was deleted succsfully', 'Deletion Confirmation');
$(this).fadeOut('slow', function () { $(this).remove(); });
}
但是当它被执行时,它将返回以下错误“Microsoft JScript运行时错误:无法在jquery-1.6内的if(!(e=a.ownerDocument.defaultView))
上获取属性'defaultView'的值:object is null或undefined”。 2.min.js.
提示: - 只有在使用IE时才会出现此错误,如果我使用的是chrome或firefox,则不会发生这种情况!
那可能是什么导致了这个?
BR
答案 0 :(得分:1)
错误是由$(this)
未引用任何内容或window object
引起的。这取决于你的函数的调用方式。最好将要使用的元素传递给函数deleteConfirmation()
,如下所示:
$("#deleteAnswer").bind("click", function() {
deleteConfirmation(this);
});
function deleteConfirmation(element) {
jAlert('Deleted succsfully', 'Deletion Confirmation', function() {
alert("The user clicked ok");
// Hides the element that caused the click event
$(element).fadeOut('slow', function () { $(element).remove(); });
});
}
有关示例,请参阅此jsfiddle。
如果您尝试fadeOut
警告框本身,那么默认情况下就是这样,您可能已经知道了。
答案 1 :(得分:-1)
我想你忘了添加jQuery库的参考资料。请检查并添加到jQuery Reference
另一种可能性是忘记在您正在使用的页面中添加jAlert的参考。