0

我有一个带有重复部分的表单,它使用 jQuery 来克隆该部分并增加 id。现在我需要初始化变量以便通过 PHP 发送表单。

HTML:

<div class="repeatingSection">
<label for="poste_1">Poste :</label>
<input type="text" name="poste_1" id="poste_1"/>
<label for="date_1">Date :</label>
<input type="text" name="date_1" id="date_1"/>
</div>

查询:

jQuery('.cloneButton').click(function(event){

event.preventDefault();

var currentCount =  jQuery('.repeatingSection').length;
var newCount = currentCount+1;
var lastRepeatingGroup = jQuery('.repeatingSection').last();
var newSection = lastRepeatingGroup.clone(false).find('.cloneButton').remove().end();

newSection.insertAfter(lastRepeatingGroup);
newSection.find("input").each(function (index, input) {
    input.id = input.id.replace("_" + currentCount, "_" + newCount);
    input.name = input.name.replace("_" + currentCount, "_" + newCount);
});
newSection.find("label").each(function (index, label) {
    var l = jQuery(label);
    l.attr('for', l.attr('for').replace("_" + currentCount, "_" + newCount));
});
return false;
});

jQuery(document.body).on('click','.removeButton', function(){

    jQuery(this).closest('div.repeatingSection').remove();
    return false;
});

PHP:

$poste1 = '';
$date1 = '';
$poste1 = trim($_POST['poste_1']);
$date1 = trim($_POST['date_1']);

我知道我需要将它们放在一个数组中并循环遍历它们,但我不知道该怎么做。

4

1 回答 1

0

You can use a for loop and a count variable from javascript and do something like :

for($i=1; $i<$currentCount; $i++) { 
${"poste".$i} = trim($_POST["poste_$i"]);
${"date".$i} = trim($_POST["date_$i"]);
}

You would have variables $poste1 and $date1. Using ${''} creates dynamic variables.

于 2013-10-23T08:35:57.483 回答