2011-11-22 5 views
1

나는 어느 시점에서 같은 질문의 여러 행을 추가 할 수있는 형식을 가지고 있습니다. 간체 버전은 다음과 같습니다.라디오 버튼 배열

<input type="text" name="name[]" value=""/> 
<input type="radio" name="opted[]" value="Yes" /> Yes 
<input type="radio" name="opted[]" value="No" /> No 

위의 행은 모든 '친구 추가'버튼을 클릭 할 때마다 복제됩니다. 이것은 제출시 모든 행의 값을 얻으므로 텍스트 필드에 대해 잘 작동하지만 라디오 버튼은 동일한 이름을 갖고 클릭하면 다른 복제 된 행과 간섭하기 때문에 작동하지 않습니다.

이 문제를 해결하는 방법에 대한 아이디어가 있으십니까?

+5

변경 '이름 ='이름'에 = "선택했다 [123]" "[] 선택했다"'어디'123' 귀하의 질문에 대한 고유 한 식별자입니다. –

+1

@RobW - 대답해야합니다. – Quentin

+0

@RobW 감사합니다. – arnaslu

답변

4

name="opted[]"name="opted[123]"으로 바꾸십시오. 여기에서 123은 고유 한 식별자이므로 각 응답 집합이 그룹화됩니다. 그런 다음

다음 방법 중 하나를 통해 폼 요소에 액세스 할 수 있습니다

var method1 = document.getElementsByName("opted[123]"); 
var method2 = document.querySelectorAll("[name='opted[123]']"); 
//Both vanilla-JavaScript methods return a NodeList, consisting of all 
// elements with name="opted[123]"