C# javascript关闭不工作
我有一个父web表单,在单击按钮时会打开一个子窗口 我需要做的是在子窗口仍然打开时直接关闭父窗体,子窗口也应该关闭 我已经为此编写了以下javascriptC# javascript关闭不工作,c#,javascript,jquery,asp.net,C#,Javascript,Jquery,Asp.net,我有一个父web表单,在单击按钮时会打开一个子窗口 我需要做的是在子窗口仍然打开时直接关闭父窗体,子窗口也应该关闭 我已经为此编写了以下javascript var opengridacc; function OpenGridAccounts(companyId, checkRequestType, documentId) { var hdnDocumentId = $(document).find('#hdnDocumentId').val(); documentId =
var opengridacc;
function OpenGridAccounts(companyId, checkRequestType, documentId) {
var hdnDocumentId = $(document).find('#hdnDocumentId').val();
documentId = hdnDocumentId;
opengridacc = window.open("../CheckRequest/GridAccounts.aspx?comp_id=" + companyId
+ "&CheckRequestType=" + checkRequestType
+ "&DocumentId=" + documentId,
"GridAccounts", "height=755px,width=1280px,center=yes,status=no,scrollbars=yes,toolbar=no,menubar=no,left=0,top=0");
return false;
}
function closegrdacc() {
if(!opengridacc) {
opengridacc.close();
}
}
但ie给出了一个错误,即close未定义更改closegrdacc,如下所示
函数closegrdacc(){
if(opengridacc!=null)
{opengridacc.close();
}
}
你能试试这个吗
if(opengridacc!=undefined) { opengridacc.close(); }
您应该检查评估是否为
真
function closegrdacc() {
// this would return false if either opengridacc is null or undefined
if(opengridacc) {
opengridacc.close();
opengridacc = null; // clean up for a new call
}
}
此外,您可能还希望在打开时检查它是否已经存在
var opengridacc;
function OpenGridAccounts(companyId, checkRequestType, documentId) {
if (opengridacc) // it has already been assigned a window
return false;
var hdnDocumentId = $(document).find('#hdnDocumentId').val();
documentId = hdnDocumentId;
opengridacc = window.open("../CheckRequest/GridAccounts.aspx?comp_id=" + companyId +
"&CheckRequestType=" + checkRequestType +
"&DocumentId=" + documentId,
"GridAccounts",
"height=755px,width=1280px,center=yes,status=no,scrollbars=yes,toolbar=no,menubar=no,left=0,top=0"
);
return false;
}
你是说如果(opengridacc)?用这个!操作员您正在检查opengridacc是否不存在!无法获取未定义或空引用的属性“close”是我得到的错误,即使我注释if条件,也会发生相同的错误您需要检查opengridacc是否存在,否则您将得到错误。再次尝试“if(opengridacc){…”当我刷新页面时,“opengridacc”将被取消定义。使用此代码,我将“opengridacc”设置为未定义