我有一个从PHP请求返回的表单。表单有一个提交按钮和一个常规按钮。提交似乎工作正常,但常规提交将无法正常工作!请指教。
这是我的HTML:
<tr id='actionRow' name='actionRow' hidden='hidden'>
<td>
<input class='actionBtn' type='submit' id='confirm' name='confirm'
value='Confirm' onclick='genChanged();'/>
</td>
<td>
<input class='actionBtn' type='button' id='cancel' name='cancel'
value='Cancel' onclick='cancel();' />
</td>
</tr>
这是cancel()函数:
function cancel(){
alert('in cancel');
document.getElementById('editRow').hidden = false;
document.getElementById('actionRow').hidden = true;
window.location.replace("admin.php");
};
警报永远不会出现!
将多个非提交按钮放在一个表单中是否正确?
更新 我的表格看起来像:
<form action='save.php' method='POST' id='myForm'>
我已将 document.getElementById('myForm').submit();
行添加到 getChange(); 函数中,以使按钮为:< / p>
<input class='actionBtn' type='button' id='confirm' name='confirm'
value='Confirm' onclick='genChanged();'/>
然而, cancel(); 功能仍无效!
答案 0 :(得分:1)
您不能对id和函数名称使用相同的名称。
在我的样本'a'中有相同的id和函数名test()和b有不同的id和函数名取消()...取消工作正常,测试没有。
<script>
function cancel(){
alert('in cancel');
};
function test(){
alert("in test")
};
</script>
<body>
<form action='save.php' method='POST' id='myForm'>
<tr id='actionRow' name='actionRow' hidden='hidden'>
<td>
<input class='actionBtn' type='button' id='test' name='a'
value='a' onclick='test();'/>
</td>
<td>
<input class='actionBtn' type='button' id='b' name='b'
value='b' onclick='cancel()' />
</td>
</tr>
</form>
</body>
有关更多信息,您可以看到这个有用的答案:https://stackoverflow.com/a/9160009/1318727