2014-10-23 3 views
0

jQuery에서 양식을 복제하는 것은 여러 사람이있는 게스트 목록에 RSVP 옵션을 만드는 것과 같이 비교적 간단합니다.라디오 버튼이있는 양식 복제

$(selector).clone().insertAfter(selector:last) 

IT는 clone() 방법에 true를 전달하여 메서드 나 속성을 복사 할 수있는 기능을 제공뿐만 아니라, 입력이 상대적으로 쉽다.

: 당신이 일반적으로 선택을 표시하려면 다음을 사용 하듯이

<input type="text" name="email_address[]"/> 

그러나이 입력 radio<input> 요소를 더 복잡하게 : 당신이 당신의 입력 이름의 끝에 []를 추가 할 수 있습니다 다수의 입력에 대처하려면 더 대괄호 구문을 추가

<input type="radio" name="choice" value="1"/> <input type="radio" name="choice" value="2"/> 

여러 값이 여전히 있기 때문에, 일을 혼동, 일부 브라우저는 이제 다른 선택을 할 수 있습니다

<label>Person:</label> <input type="radio" name="choice[]" value="1"/> <input type="radio" name="choice[]" value="2"/> 
<label>Person:</label> <input type="radio" name="choice[]" value="1"/> <input type="radio" name="choice[]" value="2"/> 

백 엔드에서 라디오 버튼을 구문 분석하기가 어렵지 않게 쉽게 복제 할 수있는 방법으로이를 어떻게 해결할 수 있습니까?

답변

0

약간의 RegEx 재미로이 사실을 알 수 있습니다!

먼저 첫 번째 입력 요소에 숫자 값을 추가

<input type="radio" name="choice[0]" value="1"> <input type="radio" name="choice[0]" value="2"> 

을 이제 자신의 형제 자매에 맞춰 각 요소에 대해 숫자 간단한 증가를 만들고 자바 스크립트

$(selector).clone().insertAfter(selector:last) 
.find('input[type="radio"]').each(function(){ 
    var name=$(this).attr('name'); 
    $(this).attr('name',name.replace(/([0-9]+)/g,1*(name.match(/([0-9]+)/g))+1)); 
}); 

에.

+0

내가 물었을 때 응답 상자를 깜빡 잊어 버렸기 때문에 내 질문과 답변 사이에 지연이있었습니다.이 질문은 상대적으로 간단한 문제에 대한 내 자신의 경험을 공유하기위한 것이지만 다른 앞면에 유용 할 수있는 무언가입니다 엔드 개발자. – M1ke

관련 문제