Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP和jQuery—将输入值推送到要发布的数组中_Php_Jquery - Fatal编程技术网

PHP和jQuery—将输入值推送到要发布的数组中

PHP和jQuery—将输入值推送到要发布的数组中,php,jquery,Php,Jquery,我正在构建一个表单——当用户点击“复制”按钮时,表单的一部分会动态生成并增加输入字段的各个ID。例如,为名字创建的输入字段的id为“firstname1”,当它复制时会变成“firstname2”等等 我的问题是我正在尝试构建的php“确认”页面。我想回显生成和填充的每个输入字段,而不需要硬编码一堆回显。我被告知要使用数组而不是单个变量名——我有点理解这个概念,但还远远不够 我试图创建一个数组来捕获每个新输入的值,这样我就可以发布数组,然后循环并回显每个值,但我真的不知道需要更改什么以及在哪里实

我正在构建一个表单——当用户点击“复制”按钮时,表单的一部分会动态生成并增加输入字段的各个ID。例如,为名字创建的输入字段的id为“firstname1”,当它复制时会变成“firstname2”等等

我的问题是我正在尝试构建的php“确认”页面。我想回显生成和填充的每个输入字段,而不需要硬编码一堆回显。我被告知要使用数组而不是单个变量名——我有点理解这个概念,但还远远不够

我试图创建一个数组来捕获每个新输入的值,这样我就可以发布数组,然后循环并回显每个值,但我真的不知道需要更改什么以及在哪里实现它

以下代码复制整个容器div及其输入字段,并增加其类号:

$(#replicate').click(function(){
  var $cloned = $('.container1').clone();
  $cloned.find('input').val('');
  $cloned.appendTo($('.emptyContainer'));
  var container = $(".emptyContainer div").length;
  var containerNumber = container + 1;
  var containerClass = 'container' + containerNumber; 
  $(".emptyContainer .container1").attr("class", containerClass);
然后输入ID以相同的方式递增:

var fnameID = 'firstname' + containerNumber;
$('.emptyContainer #firstname1').attr({id: fnameID, name: fnameID});
还有更多的输入,包括姓氏、电话、电子邮件等

另一位用户建议:

foreach($_POST as $fieldName=>$fieldValue){
  echo $fieldName." = ".$fieldValue."<br/>";
}
虽然这可以让我在php页面上找到所有内容,但它都在一个大的块中,这会让后面的样式设计有点麻烦


如何获取每个新输入的输入值,将它们存储在一个数组中,并将它们发布到php端,这样当用户点击submit时,所有相关信息都会保留在它的相关区域?

您可以尝试以下方法,因为这种方法最适合我处理动态行

代码不太可读,因为我直接从项目中粘贴,但仍然希望它会有所帮助

$('.add-option').live('click',function(){

        if(rowCtr < ucount){
            var tr = '<tr class="input-'+counter+'"><td><select id="itb_users" class="itb_users" name="project[itb_users]['+counter+']" >'
                tr +=     '<option value=0>Select</option>'
                          <?php foreach ($itb_users as $item){ ?>
                tr +=             '<option grade="<?php echo $item->grade; ?>" value="<?php echo $item->id; ?>"><?php echo $item->first_name; ?></option>';  
                         <?php } ?>
                tr +=   '</select>'
                tr += '</td>'
                tr +=   '<td>&nbsp;</td>'
                tr +=   '<td><input class="_hour" id="project[input-hour]['+counter+']" name="hours['+counter+']" type="text" class="field" style="width:30px"/></td>'
                tr +=   '<td><img class="add-option" src="'+'<?php img_src('add.png'); ?>'+'" />&nbsp;&nbsp;<img class="remove-option" src="'+'<?php img_src('remove.png'); ?>'+'" /></td>'
                tr +=   '</tr>';
                counter++;
                rowCtr++;
     .......
提交php时,将收到一个带有相关记录的可变项目。

$replicate'您缺少开始单报价吗?