2013-08-19 3 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 메소드에서 필드의 속성을 추출하는 데 사용됩니다. 내가 필드의 일부를 복제

<?php if($_POST){ 
echo $_POST['treatment']; 
echo $_POST['start']; 
echo $_POST['end']; 
} ?> 

문제, 모두가 같은 이름의 속성이 : 그래서 스크립트의 시작 부분에이 코드가 있습니다. 동일한 이름을 가진 모든 필드를 검색하거나 차별화 할 수있는 방법이 있습니까?

미리 감사드립니다.

답변

1

사용처럼 "시작"이라는 얻을 수 있습니다 : 다음 $ _POST의 배열을해야합니다

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[]"> 

대신 [ '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

관련 문제