我有一个表单,我允许用户使用JQuery动态克隆一些字段(参见here for example)。
<form name="add_treatment" method="post" action="<?php echo thisURL() ?>">
<fieldset>
<legend>Choose treatment</legend>
<select id="treatment_id" name="treatment">
<option>1</option>
<option>2</option>
<option>3</option>
</select>
</fieldset>
<fieldset id="event-set">
<legend>Event</legend>
Start <input type="number" name="start"><br>
End <input type="number" name="end">
</fieldset>
<div id="newFields"></div>
<input type="button" value="+ Add event" id="addInputs" style="width: 20%"/><br><hr>
<input type="submit" value="Display">
</form>
<script type="text/javascript">
$('#addInputs').click(function() {
$('#event-set').clone().appendTo('#newFields');
});
</script>
表单用于通过“post”方法显示数据。不同字段的名称属性用于从POST方法中提取它们。所以我在脚本的开头有这个代码:
<?php if($_POST){
echo $_POST['treatment'];
echo $_POST['start'];
echo $_POST['end'];
} ?>
问题是,当我复制一些字段时,all都具有相同的name属性。有没有办法检索具有相同名称的所有字段,或区分它们?
提前致谢。
答案 0 :(得分:1)
使用:
Start <input type="number" name="start[]"><br>
End <input type="number" name="end[]">
而不是:
Start <input type="number" name="start"><br>
End <input type="number" name="end">
那么你将在$ _POST ['start']和$ _POST ['end']中有一个数组。
答案 1 :(得分:0)
您可以像这样获得所有名为“start”的输入
$("input[name='start']")
答案 2 :(得分:0)
使用:
Start <input type="number" name="start[]"><br>
End <input type="number" name="end[]">
而不是:
Start <input type="number" name="start"><br>
End <input type="number" name="end">