使用jQuery发送表单并检查它是否已提交

时间:2014-02-25 08:42:06

标签: php jquery forms

我的页面上有两个表单,其中一个有2种不同的提交方式,一个提交按钮和一个jQuery on click事件,它看起来像这样:

<script>
    $(document).ready(function() {
        $('#img_send_form').click(function() {
            $('#form2').submit();
        });
    });
</script>

<form name="form1" action="#" method="post">
    <input type="text" name="field1"/>
    <input type="submit" name="send1"/>
</form>
<form name="form2" action="#" method="post">
    <input type="text" name="field1"/>
    <input type="text" name="field2"/>
    <input type="text" name="field3"/>
    <input type="text" name="field4"/>
    <input type="text" name="field5"/>
    <input type="text" name="field6"/>
    <input type="text" name="field7"/>
    <input type="submit" name="send2"/>
</form>
<img src="xxx" id="img_send_form"/>

检查form2是否在php上被提交的最佳方法是什么?我是否需要为每个表单字段使用isset?

if (isset($_POST['field1'])||isset($_POST['field2'])||isset($_POST['field3'])||isset($_POST['field4'])||isset($_POST['field5'])||isset($_POST['field6'])||isset($_POST['field7']))

还是有其他“更好”的方法吗?

4 个答案:

答案 0 :(得分:2)

在两种形式中使用相同名称的隐藏字段(但如果需要,可以使用不同的ID)

然后你只需要检查那个隐藏的字段

答案 1 :(得分:1)

只需在第二个表单中添加一个隐藏字段,并在PHP中检查是否已设置,在这种情况下使用了第二个表单

答案 2 :(得分:1)

不需要隐藏字段,

PHP:

if(isset['send2'])) { echo "Form2 submitted !" ;?> }

答案 3 :(得分:0)

<script>
    $(document).ready(function() {
        $('#img_send_form').click(function() {
            $('#form2').submit();
        });
    });
</script>

<form name="form1" action="#" method="post">
    <input type="text" name="field1"/>
    <input type="submit" name="send1"/>
</form>
<form name="form2" action="#" method="post">
    <input type="hidden" name="form2_send"/>
    <input type="text" name="field1"/>
    <input type="text" name="field2"/>
    <input type="text" name="field3"/>
    <input type="text" name="field4"/>
    <input type="text" name="field5"/>
    <input type="text" name="field6"/>
    <input type="text" name="field7"/>
    <input type="submit" name="send2"/>
</form>
<img src="xxx" id="img_send_form"/>

和php:

if(isset['form2_send'])) { echo "Form2 submitted !" ;?> }