0

我正在研究两种形式。我基本上在做的是我从一个表单中获取值并将其分配给另一个表单输入字段。第二个表单隐藏了所有字段,因为我需要它来保存所有选择和分配的数据,然后使用提交按钮我将提交该隐藏表单并获取 $_post 中的所有值

让我在下面更清楚的是包含我分配给隐藏表单的数据的 tr。

  <tr>
        <td align="center"><input type="text" name="name" id="spocName"></td>
  </tr>

  <tr>
        <td align="center"><input type="text" name="name" id="spocName"></td>
  </tr>

  <tr>
        <td align="center"><input type="text" name="name" id="spocName"></td>
  </tr>
  .
  . 
  .

这些 tr 基本上发生的事情是,当页面加载仅在 tr 上,但用户有一个按钮来添加更多行时,每次点击他都可以添加一个新行到任意数量的行,一旦他填写了名称字段然后按下保存按钮 输入数据以隐藏形式(第二种形式)分配给输入字段。

  $(elemnt).each(function(index, element) {         
        $('#spc-name').val($("#spocName").val());
    }); 

在上面的代码中,$('#spc-name') 是隐藏形式的输入字段的 id,$("#spocName") 是第一种形式的输入字段的 id。一旦分配了值,用户就有另一个按钮来提交隐藏的表单。一旦表单提交,它将数据保存在数据库中,但我现在在这里讨论这个问题,问题是我所做的一切都适用于单个 tr,但我需要一个通用代码,以便我可以在数据库中插入多条记录。

当我 print_r $_post 我得到了这个虽然我输入了多条记录但我只得到了第一个

  Array
 (    
    [spc-name] => one    
 )

但我期待的是

Array
(    
    [0] => Array
    (    
    [spc-name] => one    
    )
    [1] => Array
    (    
    [spc-name] => two    
    )
    [2] => Array
    (    
    [spc-name] => three    
    )
    . 
    .
    . 
    .      

 )

我不知道在哪里更改我的代码,或者是否需要循环将它放在哪里。所以伙计们我需要你的帮助

我尽力解释它,但如果仍然不清楚,我可以编辑我的问题,以便我的问题更清楚。提前谢谢

4

2 回答 2

2

像这样使用名称作为数组。

<input type="text" name="name[]" id="spocName">

也不要尝试为多个元素提供相同的 id。Id 必须是唯一的。

于 2013-10-08T10:39:59.770 回答
0

您可以使用如下所示的数组。

<tr>
    <td align="center"><input type="text" name="names[]" class="spocName"></td>
</tr>

使用 javascript,您可以添加更多行,但所有名称都是names[]. 提交表单后,在 PHP 中,您将执行以下操作:

<?php
$names = $_POST['names'];
foreach($names as $name){
   echo $name;
}
?>

更新

注意:如果您有多个使用相同名称的元素,则应该使用CLASS而不是。ID

使用 jQuery,执行以下操作:

$('.spocName').each(function(){
    //get the value of the table row field
    var formValue = $(this).val();
    //now, create a new hidden input
    var hiddenForm = '<input type="hidden" name="hiddenNames[]" value="'+formValue+'">';
    //append the new hidden input to your hidden form
    $('div#hiddenForm').append(hiddenForm);
});

以上假设您有一个DIV带有hiddenForm隐藏输入字段的 ID。

于 2013-10-08T10:42:15.570 回答