2010-07-09 2 views
13

У меня есть несколько переключателей, относящихся к одной и той же категории, но я хочу назвать их по-другому и сделать их взаимоисключающими. Как мне это сделать? Основываясь на выбранном значении, я делаю разные действия, и я не могу получить к ним доступ, если они имеют одинаковое имя.Как создать взаимоисключающие переключатели с разными именами?

+0

Если вам нужны различные имена, которые вы должны будете изменить название радиостанции на представить в форме. –

ответ

21

Почему вы не можете получить к ним доступ, если у них есть одно и то же имя? Вы можете добавить ID (вы должны), вы можете различить по значению или просто подсчитать их и использовать n-й элемент.

Вы, , должны дать радиообменам то же имя, чтобы понять, что они являются исключительными.

Вы можете (но не должны) взломать это и дать каждому объекту другое имя. Затем добавьте обработчик onSelect/onClick для каждого объекта, и когда событие срабатывает, «снимите отметку» с других кнопок. Это грязно, и его следует избегать.

+0

Как я хочу выполнять разные действия на основе выбранного значения. Код действия написан на Java. – yogsma

+1

Ну почему бы не посмотреть на значение параметра в вашем Java-коде и использовать его, чтобы решить, что делать? – Pointy

+0

Да, это то, что я сделал наконец. – yogsma

14

Радио-кнопки требуют, чтобы одно и то же имя было взаимоисключающим. Однако они могут иметь разные значения атрибута идентификатора, если вы хотите манипулировать ими по отдельности с помощью JavaScript.

Есть много способов, чтобы получить выбранное значение с 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 и его элементы через JavaScript.

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

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

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

Смежные вопросы