您实际上可以构建多维数组,例如contact[id][type]
和contact[id][address]
。因此,如果您有一个id
,如果您要添加新的,这可能是一个增量值,请id
为两者提供相同的值。PHP 会将其视为一个多维数组,例如$_POST['contact'][1]['type'] == 'sometype, $_POST['contact'][1]['address'] == 'theaddress'
.
因此,您的新表单输入如下所示:
<input id='someid_type_123' name='contact[123][type]' />
<input id='someid_address_123' name='contact[123][address]' />
<input id='someid_type_124' name='contact[124][type]' />
<input id='someid_address_124' name='contact[124][address]' />
然后你可以循环$_POST['contact']
:
foreach ($_POST['contact'] as $id => $values) {
echo $values['type'] . ' ' . $values['address'];
}
with 示例输入var_dump($_POST)
看起来像:
array(1) {
["contact"]=>
array(2) {
[123]=>
array(2) {
["type"]=>
string(5) "type1"
["address"]=>
string(5) "addr1"
}
[124]=>
array(2) {
["type"]=>
string(5) "type2"
["address"]=>
string(5) "addr2"
}
}
}
用于在 JavaScript 中生成 id 的方法(假设您事先不知道它们)完全取决于您。您可以在1
每次单击add more
链接时启动一个变量并增加它。的值id
并不重要,只要输入对的值相同即可。
// Initialize curId on page load.
var curId = 1;
addMoreLink.onclick = function() {
// append the new inputs using curId
// and then increment the value
curId++;
}