【发布时间】:2012-09-17 20:43:21
【问题描述】:
我有一个带有一些输入字段和一个提交按钮的表单。表单应该提交给一个 servlet。
当我点击提交/返回时,在 Chrome 或 IE 中一切正常,但在 Firefox 上却没有。对这个问题有任何想法吗?
HTML:
<body>
<div align="center">
<form>
<table cellpadding ='2' border ='0'>
<tr>
<td>
<label for="Database">Database</label>
</td>
<td>
<input id="database" type="text" onchange="setdirtybit()" name="Database" style="width:200px"></input>
</td>
</tr>
<tr>
<td>
<label for="Script">Script</label>
</td>
<td>
<input id="script" type="text" onchange="setdirtybit()" name="Script" style="width:200px"></input>
</td>
</tr>
</table>
<br />
<input type ='submit' value='Submit' onclick='Close()'></input>
</form>
</div>
</body>
JavaScript:
function Close()
{
window.returnValue = "";
if(window.dirtyFlag)
{
document.forms[0].method="post";
document.forms[0].action="/nbreports/updates/";
document.forms[0].submit();
window.returnValue = getValue('database') + '/' +
getValue('script') ;
}
window.close();
}
function getValue(varName)
{
if(document.getElementById(varName) == null)
return "";
if(document.getElementById(varName).value == null)
return "";
else
return document.getElementById(varName).value;
}
function setdirtybit()
{
window.dirtyFlag = 1;
}
【问题讨论】:
-
Close()方法有什么作用?考虑发布其代码,提炼出与此问题相关的内容。 -
结合 SUBMIT 和 ONCLICK 并不简单。您需要正确处理事件。
-
此页面显示为弹出窗口。 Close() 方法旨在将值返回到父页面。代码已添加
-
我通常使用按钮类型并将我所有的序列化/提交/之后操作都放在函数中
-
@FlavorScape :我在关闭函数中添加了手动提交代码,并从表单标签中删除了相同的代码。现在它在 Firefox 中就像一个魅力,但在 chrome 中却不是。
标签: javascript html