使用相同类的多个输入字段在POST上获取第一个值

时间:2014-02-24 19:33:40

标签: php jquery ajax forms

我有一个表单,这个表单(长话短说)多次具有相同的输入字段(可以是2-5倍的任何地方)。表单必须多次使用此字段,因此有多次出现原因。我使用ID来获取输入字段,但由于字段将多次出现,因此必须将其更改为类。

<input type="text" style="width: 231px; height: 25px;" name="myname" class="myclass" placeholder="myname">

然后我使用ajax将数据发布到数据库。

$.ajax({
       type: "POST",
       url: "/myfile.php",
       data: {"myname": $(".myclass").val()},

当第二个字段被POST时,它总是为空,但是第一个POST工作正常。关于我能做些什么来做这项工作的任何想法,知道我必须多次在页面上有这个字段?

更新:
我希望这两个字段单独发布,而不是一次发布,因为我希望它们在数据库中是不同的记录。所以会发生的是,我第一次发布,单击“保存”,然后出现该字段的第二个实例(使用jquery),单击第二个字段集的保存后,该页面应该再次发布。

1 个答案:

答案 0 :(得分:0)

val()只返回集合中第一个元素的值,如果你想要所有元素,你必须将它们映射到一个数组中

var values = $.map($(".myclass"), function(el) {
     return el.value;
});

$.ajax({
   type: "POST",
   url: "/myfile.php",
   data: {"myname": values},
});

如果是表单,您也可以使用serialize()serializeArray()来执行此操作。