用于打开弹出窗口的我有一个表单提交,它从表单中获取值并继续 到下一页...这里我有一个打开子窗口的超链接,同时 我点击它,打开子窗口,同时重新加载 父窗口。我有一个配置到父窗口的操作 还有一个数据库插入语句。
问题在于,当我点击链接时,它会调用我的操作 再次(因为页面重新加载),在这个动作我写的条件来 检查上一页表单提交中的null /空字符串。从此 是第二次动作加载它看起来的字段(但是 实际上这些字段是我以前的页面形式)。所以它取无效 在检查我的条件时。
另一个问题是,当我解决上述问题时,就来了 SQL insert语句,即将执行第二次。我不想要 这是发生的事情,或者我不希望我的行动在我打开时执行 弹出窗口,我想从弹出窗口填充选定的值 到父窗口。
代码
function select_reactant()
{
window.open ("SeriesTab.action?component=reactant",
"mywindow","scrollbars=1,resizable=1,width=1000,height=1000");
};
这是我打开弹出窗口的地方,想要将弹出窗口中选择的值填充到此处的文本
<tr>
<td><a href="" onclick="select_reactant();">reactant</a></td>
<td><s:textfield name="reactant" id="reactantId" readonly="true" theme="simple"/></td>
</tr>
jquery将值表单弹出窗口返回到父窗口
$(window.opener.document).find('#reactantId').val(rxn);
以下操作中的代码就是我在开头提到的操作
if(Rxn!=null||!Rxn.equals("")) //Rxn is the field variable for previous page
{
//my insert statement
}
当我运行时,我得到nullpointer错误,因为由于弹出打开
,页面重新加载Rxn的值被重置为nullwindow.open
答案 0 :(得分:2)
你可以做这样的事情
的 HTML 强> 的
<a href="#" id="anchSelectReactant">reactant</a>
jQuery
$(function(){
$("#anchSelectReactant").click(function(){
select_reactant();
return false;
});
});