Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> radio кнопка или как переписать функцию 
:(
    Опции темы
Sniper
Дата 9.7.2008, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



Код

<form method="POST" id="myform" name="myform">
<input type="radio" name="rb" value="1">1<br>
<input type="radio" name="rb" value="2">2<br>
<input type="radio" name="rb" value="3">3<br>
<input type="submit" value="submit" onclick="getradio(document.getElementById('myform'));return false;">
</form>


Код

<script type="text/javascript">
function getradio(form) {
 var test;
var string;
  for (i=0; i<form.length; i++) {
     formname = form[i].name;
     formtype = form[i].type;
     if (formtype == 'radio') { //переделать начиная отсюда ;-)
       for (x=0; x < document.myform.rb.length; x++) {
          if (document.myform.rb.checked) {
            test = x;
            alert(test);
          }
       }
     string = string + test +"$";
     }
}
}
</script>

как переписать функцию, чтобы она работала так: 
T$T$T$ где T- номер выбраной радио кнопки

и чтобы document.myform.rb.checked такого не было ;-)

Это сообщение отредактировал(а) Sniper - 9.7.2008, 13:24


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
comtat
Дата 9.7.2008, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 7
Всего: 71



Чтото типа того ..  ?
Код

<html>
<head><title></title></head>
<body>
<script type="text/javascript">
function $(element){
    return typeof element == 'object' ? element : document.getElementById(element);
}

function getradio(form) {
    var test;
    var string = '';
    
    for (i=0; i<$(form).length; i++) {
          formname = $(form)[i].name;
         formtype = $(form)[i].type;
          if (formtype == 'radio') { //переделать начиная отсюда ;-)
                for (x=0; x < $(form).rb.length; x++) {
                   if ($(form).rb[x].checked) {
                         test = $(form).rb[x].id;
                       alert(test);
                   }
                }
             string = string + test +"$";
          }
    }
}
</script>

<form method="POST" id="myform" name="myform">
<input type="radio" id="id_1" name="rb" value="1"><label for='id_1'>1</label><br />
<input type="radio" id="id_2" name="rb" value="2"><label for='id_2'>2</label><br />
<input type="radio" id="id_3" name="rb" value="3"><label for='id_3'>3</label><br />
<input type="submit" value="submit" onclick="getradio('myform');return false;">
</form>
</body>
</html>



--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
Sniper
Дата 9.7.2008, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



да типа так, только чтобы имя rb не участвовало в коде... т.е. чтобы было $(form)[i].name; и value вместо id

и ещё не совсем понятен смысл функции $(element) всмысле, зачем добавлять ещё к каждой radio кнопке id (собственно не нужен id...)

Это сообщение отредактировал(а) Sniper - 9.7.2008, 14:32


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
comtat
Дата 9.7.2008, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 7
Всего: 71



Цитата(Sniper @  9.7.2008,  14:27 Найти цитируемый пост)
зачем добавлять ещё к каждой radio кнопке id (собственно не нужен id...)

ну как минимум для label ... как максимум для простоты обращения к элементу
Цитата(Sniper @  9.7.2008,  14:27 Найти цитируемый пост)
да типа так, только чтобы имя rb не участвовало в коде... т.е. чтобы было $(form)[i].name; и value вместо id

щас переделаю smile


--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
comtat
Дата 9.7.2008, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 7
Всего: 71



Код

<html>
<head><title></title></head>
<body>
<script type="text/javascript">
function $(element){
    return typeof element == 'object' ? element : document.getElementById(element);
}

function getradio(form) {
    var test = '';
    var string = '';
    var cnt = 0;
    
    for (x=0; x < $(form).childNodes.length; x++) {
        if ($(form).childNodes[x].type == 'radio'){
            if ($(form).childNodes[x].checked) {
                test = $(form).childNodes[x].value;
                alert(test);
            }
            cnt++;
        }
    }
    for (i=0; i<cnt; i++) {
        string += test +"$";
    }
}
</script>

<form method="POST" id="myform" name="myform">
<input type="radio" id="id_1" name="rb" value="1"  checked><label for='id_1'>1</label><br />
<input type="radio" id="id_2" name="rb" value="2"><label for='id_2'>2</label><br />
<input type="radio" id="id_3" name="rb" value="3"><label for='id_3'>3</label><br />
<input type="submit" value="submit" onclick="getradio('myform');return false;">
</form>
</body>
</html>

только последний for както "кривоват", если кто-нибуть предложит как сделать лучше буду рад науке ..


--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0417 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.