Как я могу написать это как функцию JavaScript? - PullRequest
0 голосов
/ 10 апреля 2010

У меня есть следующий фрагмент кода, встроенный в некоторые из моих элементов div, поэтому при щелчке по этим элементам переключается определенный переключатель

onclick="document.g1.city[0].checked=true;"

Однако я хотел бы преобразовать вышеуказанный вызов в вызов функции, как показано ниже:

onclick="checkRadioButton(city[0]);"

И функция будет примерно такой

function checkRadioButton(input){
    document.g1.input.checked=true;
}

Есть ли способ, которым я могу это сделать?

Ответы [ 2 ]

3 голосов
/ 10 апреля 2010

Вы можете написать любой код Javascript в атрибуте onclick. Помните, что city[0] нигде не определено. Чтобы получить к нему доступ, необходимо указать полный document.g1.city[0]. Таким образом, онкликом становится:

onclick="checkRadioButton(document.g1.city[0]);"

Внутри вашей функции вы уже получаете элемент, и вам больше не нужно извлекать его из документа Вы можете напрямую установить его checked свойство:

function checkRadioButton(input) {
   input.checked = true;
}
0 голосов
/ 10 апреля 2010
onclick="checkRadioButton(document.g1.city[0]);"

checkRadioButton(var input){
    input.checked=true;
}

Вы также можете уменьшить потребность в document.g1.city[0], если, например, каждый отмеченный вами DIV имеет атрибут «radioID», а значение атрибута должно соответствовать идентификатору, указанному для переключателя:

onclick="checkRadioButton(this);"

checkRadioButton(var div){
    document.getElementById(div.radioID).checked=true;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...