我在父窗口中有一个链接,可以打开一个子窗口。单击子窗口中的保存按钮,我想调用struts操作并关闭子窗口。然后重新加载父窗口。
function closeChildWindow(){
document.forms[0].action="/rms/action/linkSourceList";
document.forms[0].submit();
var originalSource = document.getElementById("originalSource").value;
opener.location.href = '../action/editSource?source_id='+originalSource;
}
我在子窗口中使用了上面的代码。此代码重新加载父窗口,但不从子窗口调用该操作。谁能建议我解决方案?在此先感谢... :)
答案 0 :(得分:1)
如果你使用了一些JavaScript库,事情会容易得多。
我将在jQuery中给出一个例子:
function submitAndCloseChildWindow(){
var data = /* get form data here */;
$.ajax({
url: "/rms/action/linkSourceList",
data: data,
method: "POST"
}).done(function() {
opener.location.href = '../action/editSource?source_id=' + $("#originalSource").val();
window.close();
});
}
这将使您的窗口在失败时保持打开状态,并允许您处理任何预期的错误。此外,如果请求仍未通过,请咨询控制台。