Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   checkbox, radio и select c option (https://javascript.ru/forum/misc/30148-checkbox-radio-i-select-c-option.html)

Hekumok 25.07.2012 18:08

checkbox, radio и select c option
 
как понять, что стоит галочка в checkbox? как понять, какой выбран radio? как понять какой option выбран в select?
<form>
<input type="checkbox">Согласен</input><br>
<input type="radio" name="A">Да</input><br>
<input type="radio" name="A">Нет</input><br>
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select><br>
<input type="submit" value="Enter">
</form>

И можно ли выбрать по умолчанию какой-то определенный option в select? И можно ли определить по умолчанию в каком radio будет 'точка'? И можно ли сделать, чтоб по умолчанию стояла галочка в checkbox?

lord2kim 25.07.2012 18:12

Цитата:

Сообщение от Hekumok (Сообщение 191634)
как понять, что стоит галочка в checkbox? как понять, какой выбран radio? как понять какой option выбран в select?
<form>
<input type="checkbox">Согласен</input><br>
<input type="radio" name="A">Да</input><br>
<input type="radio" name="A">Нет</input><br>
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select><br>
<input type="submit" value="Enter">
</form>

И можно ли выбрать по умолчанию какой-то определенный option в select? И можно ли определить по умолчанию в каком radio будет 'точка'? И можно ли сделать, чтоб по умолчанию стояла галочка в checkbox?

по умолчанию
<html>
<head>
<title></title>
<script>
function chck() {
  alert("checkbox-переключатель "+(document.getElementById("checkbox").checked ? "включен" : "отключен"));
  for (i=0; i<document.getElementsByName("a").length; i++) {
    if (document.getElementsByName("a")[i].checked) {
       alert("включен "+(i+1)+" radio-переключатель");
    }
  }
  alert("Выбран "+(document.getElementById("select").options.selectedIndex+1)+" элемент списка");
}
</script>
</head>
<body>
<input type="checkbox" id="checkbox" checked><br>
<input type="radio" name="a"><input type="radio" name="a" checked><input type="radio" name="a"><br>
<select id="select">
<option>1</option>
<option selected>2</option>
<option>3</option>
</select>
<input type="button" value="Click" onClick="chck()">
</body></html>

devote 25.07.2012 18:16

<form onsubmit="return test();">
<label><input type="checkbox">Согласен</label><br>
<label><input type="radio" name="A" value="Da" />Да</label><br>
<label><input type="radio" name="A" value="Net" />Нет</label><br>
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select><br>
<input type="submit" value="Enter">
</form>
<script>
    function test() {
        var chk = document.querySelector('input[type="checkbox"]'),
            radio = document.querySelector('input[type="radio"]:checked'),
            sel = document.querySelector('select');

        alert( "Checkbox checked: " + chk.checked );
        alert( "Radio checked: " + ( radio ? radio.value : "Не выбран" ) );
        alert( "Select selected: " + sel.value );

        return false;
    }
</script>

Hekumok 25.07.2012 18:34

lord2kim, devote, спасибо)) a как сделать через if? Т.е.
if (галочка в checkbox стоит) {
делать то-то и то-то
} else {
делать то-то и то-то
} ;
if (выбран 1-ый radio) {
делать это
} else if (выбран 2-ой radio) {
делать это
} else {
делать это
} ;
if (выбран 1-ый select) {
делать это
} else if (выбран 2-ой select) {
делать это
} else {
делать это
} ;

ruslan_mart 25.07.2012 18:39

Hekumok,

Как-то так:
Если стоит, то
if(element.checked==true)
А если нет, то
if(element.checked==false)

Hekumok 25.07.2012 19:02

Руслан, спасибо

lord2kim 25.07.2012 19:06

Hekumok,
<html>
<head>
<title></title>
<script>
function chck() {
  var select = document.getElementById("select").options.selectedIndex;
  var radios = document.getElementsByName("a");
  if (document.getElementById("checkbox").checked) {
     alert("chekcbox on");
  } else { alert("checkbox off"); }
 
  for (i=0; i < radios.length; i++) {
   if (radios[i].checked) break;
  }
  if (i == 0) { alert("выбран первый radio-переключатель"); }
  else if (i == 1) { alert("выбран второй radio-переключатель"); }
  //и далее в том же духе
  /*можно так
   switch (i) {
     case 0: { alert("выбран первый radio-переключатель"); break; }
     //и так далее
  }
  */
 
  if (select == 0) { alert("выбран первый элемент списка");}
  else if (select == 1) { alert("выбран второй элемент списка"); }
  // и так далее или через switch case
}
</script>
</head>
<body>
<input type="checkbox" id="checkbox" checked><br>
<input type="radio" name="a"><input type="radio" name="a" checked><input type="radio" name="a"><br>
<select id="select">
<option>1</option>
<option selected>2</option>
<option>3</option>
</select>
<input type="button" value="Click" onClick="chck()">
</body>
</html>

Hekumok 25.07.2012 20:13

lord2kim, спасибо)))

рони 12.04.2016 17:51

Сергей354,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.


Часовой пояс GMT +3, время: 22:30.