使用window.opener触发onchange / alternative事件

时间:2017-12-15 06:58:10

标签: javascript jquery

我搜索了几乎所有页面,但没有找到任何正确的解决方案。 我用window.open打开了一个窗口并运行一个形成值表的查询。当我选择一行时,其值将填充到父窗口。 在父窗口中,我需要在填充值时执行操作。

window.opener.document.formname.fieldname.value = tr.children("input.tdid").val();//in child window

//in parent window //jquery is included and formid="formname"
$("#formname input[name=fieldname]").on("change",function(){
//do some stuff
});

我知道只有当我们对输入执行任何操作时才会触发更改事件...这里我也不能在值集上使用触发器。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

看到您正在使用jQuery / Javascript更新开启者(父窗口)的字段,您可以在字段更改后立即调用onchange [或您可能想要命名的任何内容。]函数你自己。因此,无需lat DOUBLE NOT NULL, lng DOUBLE NOT NULL 事件触发器。

答案 1 :(得分:-1)

我已经通过一个小黑客解决了我的问题。截至目前它工作正常,但我不确定它是否会在将来导致错误。

window.opener.document.formname.fieldname.value =//something 
window.opener.document.formname.fieldname.focus(); 
window.close();

我正在父窗口中捕捉焦点事件。

$("formname input[name=fieldname]").on("focus",function(){});