2013-08-19 44 views
0

我有一種表單,允許用戶使用JQuery動態地克隆一些字段(請參閱here for example)。從動態生成的HTML表單中檢索字段

<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']; 
} ?> 

的問題是,當我複製某些字段中,都具有相同的名稱屬性。有沒有辦法檢索所有具有相同名稱的字段,或區分它們?

在此先感謝。

回答

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']。

參見:Array posting in PHP

+0

非常感謝,它的工作完美! – Wiliam

0

你可以得到所有的輸入爲 「開始」 像這樣

$("input[name='start']") 
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"> 

updated code