一个表单中的常规按钮和提交按钮不起作用

时间:2013-07-23 01:38:17

标签: php javascript forms

我有一个从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(); 功能仍无效!

1 个答案:

答案 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

相关问题