Страница 1 из 1

сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-20 17:08:45
Alex Keda
итак. код типа того:

Код: Выделить всё

			<input id="usilok_id" name="usilok" value="1" type="checkbox">
			<select style="width: 100px;" name="usilok_type">
				<option value=""></option>
				<option value="30">гидро</option>
				<option value="58">электро</option>
			</select>
надо при выборе чего-то в select автоматом сделать галку в чекбоксе...
незнаю как яндексу объяснить чё я хочу - так бы сам нашёл =)))

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-20 17:58:23
lexy

Код: Выделить всё

             
<input id="usilok_id" name="usilok" value="1" type="checkbox">
             <select style="width: 100px;" name="usilok_type">
                <option value=""></option>
                <option value="30">гидро</option>
                <option value="58">электро</option>
             </select>
<script>
var cbx=document.getElementById('usilok');
var lst=document.getElementById('usilok_type');
lst.onchange=function(){
   if(lst.value==58){
      cbx.selected=true;
  } else {
     cbx.selected=false;
  }
}
</script>
ну вот примерно так )))))
[offtop]
с прошедшим тебя! выпил за твое здоровье на открытии банного сезона, но поздравить не вышло, с OperaMini и капчей как-то не осилил )))))
[/offtop]

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-20 19:25:21
Alex Keda
пасиба!
========
однако - если не это а другое значение выберут? =)
мне бы универсальное - чтоб не описывать каждый вариант...
чёнить типа онселект....

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-20 20:34:37
lexy
так просто убери if тогда так:

Код: Выделить всё

lst.onchange=function(){
      cbx.selected=true;
 }
или, если нужно проверить, что значение выбрано

Код: Выделить всё

lst.onchange=function(){
     if(lst.value>0){ 
        cbx.selected=true;
    }
 }

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-20 20:35:29
zg

Код: Выделить всё

<input type="checkbox" id="chk1" value="" />
<select onchange="chk1.value=this.options[this.selectedIndex].value; chk1.checked=true">
<option value="1">Раз</option>
<option value="2">Два</option>
<option value="3">Три</option>
</select>
<input type="button" value="Alert" onclick="alert(chk1.value)" />

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-21 20:09:18
Alex Keda
попытался применить на практике.
zg - не работает.
lexy - чё-то cслишком ложно - невкуриваю...

Код: Выделить всё

			<input id="muzik_enabled" name="muzik_enabled" type="checkbox" value="64" />
			<select style="width:100px" name="muzik" onchange="muzik_enabled.value=this.options[this.selectedIndex].value; muzik_enabled.checked=true">
				<option value=""></option>
				<option value="40">CD</option>
				<option value="37">DVD</option>
				<option value="38">MP3</option>
				<option value="36">TV</option>
				<option value="39">Кассетная</option>
			</select>

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-22 4:36:05
zg
lissyara писал(а):попытался применить на практике.
zg - не работает.
предполагаю почему - ты вставил код в форму и перестало работать? проблема в том, что когда элемент находтся вне формы, то к нему можно обратиться через id, а когда он в форме, то к нему нужно обращаться через форму form.elementId, поэтому если ты используешь этот список в форме, то событие onchange надо переписать так

Код: Выделить всё

onchange="this.form.muzik_enabled.value=this.options[this.selectedIndex].value; this.form.muzik_enabled.checked=true"
и если уж делать совсем по уму, то нужно сделать так

Код: Выделить всё

onchange="this.form.muzik_enabled.value=this.options[this.selectedIndex].value; this.form.muzik_enabled.checked=this.form.muzik_enabled.value"
ты ж про форму ни слова не сказал, нельзя нарушать условия заказчика :wink:

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-22 12:07:40
Alex Keda
падонГи =)
ладно, вечером попробу.
=========
ну не знаю js. и как-то не даётся...

Re: сделать checkbox selected когда в option сделали выбор =)

Добавлено: 2008-04-24 21:40:37
Alex Keda
zg писал(а):
lissyara писал(а):попытался применить на практике.
zg - не работает.
предполагаю почему - ты вставил код в форму и перестало работать? проблема в том, что когда элемент находтся вне формы, то к нему можно обратиться через id, а когда он в форме, то к нему нужно обращаться через форму form.elementId, поэтому если ты используешь этот список в форме, то событие onchange надо переписать так

Код: Выделить всё

onchange="this.form.muzik_enabled.value=this.options[this.selectedIndex].value; this.form.muzik_enabled.checked=true"
и если уж делать совсем по уму, то нужно сделать так

Код: Выделить всё

onchange="this.form.muzik_enabled.value=this.options[this.selectedIndex].value; this.form.muzik_enabled.checked=this.form.muzik_enabled.value"
ты ж про форму ни слова не сказал, нельзя нарушать условия заказчика :wink:
пашет!