2010-07-09 2 views
13

같은 범주에 속하는 라디오 버튼이 몇 개 있지만 서로 다르게 이름을 지정하고 상호 배타적으로 만들고 싶습니다. 어떻게해야합니까? 선택한 값에 따라 다른 작업을 수행하며 이름이 같은 경우 액세스 할 수 없습니다.다른 이름으로 상호 배타적 인 라디오 버튼을 만들려면 어떻게해야합니까?

+0

서로 다른 이름이 필요하면 양식의 제출에 라디오의 이름을 변경해야합니다. –

답변

21

이름이 같은 경우 왜 액세스 할 수 없습니까? ID는 (해야 함)을 추가 할 수 있습니다. 값으로 구별하거나 개수를 세고 n 번째 요소를 사용할 수 있습니다.

은 라디오 버튼에과 동일한 이름을 지정해야 독점이라는 것을 알 수 있습니다.

이 문제를 해킹 할 수는 있지만 각 개체에 다른 이름을 지정할 수는 있습니다. 그런 다음 각 객체에 대해 onSelect/onClick 핸들러를 추가하고 이벤트가 발생하면 다른 버튼을 "선택 해제"하십시오. 이것은 더럽고 피해야합니다.

+0

As 선택한 값에 따라 다른 작업을 수행하려고합니다. 액션 코드는 Java로 작성됩니다. – yogsma

+1

Java 코드에서 매개 변수의 값을 살펴보고이를 사용하여 수행 할 작업을 결정하는 이유는 무엇입니까? – Pointy

+0

예, 그게 제가 마침내 한 것입니다. – yogsma

14

라디오 버튼은 상호 배타적 인 동일한 이름을 요구합니다. 그러나 JavaScript로 개별적으로 조작하려는 경우 ID 속성 값이 다를 수 있습니다.

는 jQuery를 함께 선택한 가치를 얻을 수있는 방법이 많이 있습니다 이름을 변경해야하는 경우

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


// value of checked input tag of type 'radio' 
var selectedValue = $('input[type=radio]:checked').val(); 

// value of checked input tag having name of 'foo' 
var selectedValue = $('input[name=foo]:checked').val(); 

// value of the first checked radio button, regardless of name 
var selectedValue = $('input:checked').val(); 
0

, 당신은 DOM에 액세스 할 수 있으며 자바 스크립트를 통해 요소입니다.

<input type="checkbox" name="X" id="myElement" /> 

<script> document.getElementById('myElement').name = 'text'; </script> 

http://www.w3schools.com/JS/js_ex_dom.asp

관련 문제