0

下面 html 代码中的简化表单包含许多重复的表单字段,这些字段必须通过一些 jquery 验证代码进行验证,并通过一些 php 代码进行处理...我已经设置了下面的表单字段以方便 php处理,但再次陷入编写正确的 jquery 验证代码,因为“名称”标签应该是唯一的。如果我让名称标签独一无二,我认为 php 编码会变得更加复杂。

只是想知道有利于 jquery 验证编码和 php 编码的重复表单字段的正确结构是什么?

有什么建议么?

先感谢您。

html代码:

<input type="checkbox" id="check0" name="productselection[]" value="productselected0">
<input id="nrofparts0" type="text" name="nrofparts[]">

<input type="checkbox" id="check1" name="productselection[]" value="productselected1">
<input id="nrofparts1" type="text" name="nrofparts[]">

<input type="checkbox" id="check2" name="productselection[]" value="productselected2">
<input id="nrofparts2" type="text" name="nrofparts[]">
4

1 回答 1

0

这是您可以做到的一种方法:

HTML

    <form id="theForm" method="post">
        <input type="checkbox" name="checky[0]" />
        <input type="checkbox" name="checky[1]" />
        <input type="checkbox" name="checky[2]" />
        <input type="submit" name="submit" value="submit"/>
    </form>

我向数组添加了一个键,因为它可以更容易地确定单击了哪些复选框。你不会得到任何未点击的。这可能会让人感到困惑

jQuery:

$('#theForm input[type="checkbox"]').each(function(){
    // if($(this))... some validation
});

php:

if(isset($_POST['checky'])){
    foreach($_POST['checky'] as $key => $val){
        echo $key.'  '.$val;  // this will give you the key of the checkbox, and the value 
    }
}

您还可以有一个隐藏的输入来计算复选框。这样,当您循环时,您可以使用它在您的 php 代码中设置空复选框。

希望这可以帮助!

于 2013-08-21T16:55:42.623 回答