Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Событие при нажатии на элемент списка (https://javascript.ru/forum/misc/23575-sobytie-pri-nazhatii-na-ehlement-spiska.html)

bohdantheone 28.11.2011 17:21

Событие при нажатии на элемент списка
 
Как определить какой нажат элемент из выпадающего списка списка и записать в текстовое поле, например есть список:
<select name="bm" id="siF21">    
    <option value="x" >Месяц</option>    
    <option value="1">Январь</option>    
    <option value="2">Февраль</option>    
    <option value="3">Март</option>    
    <option value="4">Апрель</option>    
    <option value="5">Май</option>    
    <option value="6">Июнь</option>    
    <option value="7">Июль</option>    
    <option value="8">Август</option>    
    <option value="9">Сентябрь</option>    
    <option value="10">Октябрь</option>    
    <option value="11">Ноябрь</option>    
    <option value="12">Декабрь</option>    
    </select>

При нажатии на элемент, его значение должно сразу появится в текстовом поле:
<input name="csign" size="10" type="text" id="siF4">

Skipp 28.11.2011 17:24

Повесьте событие onchange к селекту и в обработчике события его value записывайте куда надо.

bohdantheone 28.11.2011 17:30

Skipp,
а как сделать, если нету прямого доступа к селекту? Нужно обратиться через его id.

Skipp 28.11.2011 17:36

О_о вы меня убиваете фразами:)
Да по id.

Pavel M. 28.11.2011 17:47

Цитата:

Сообщение от bohdantheone
При нажатии на элемент, его значение должно сразу появится в текстовом поле

посмотрите на http://api.jquery.com/change/
первый пример

Skipp 29.11.2011 09:38

Не путай человека, может он про jQuery вообще ничего не знает и не слышал и сейчас пытается эту функцию куда-нибудь запихнуть.

ksa 29.11.2011 09:53

Цитата:

Сообщение от bohdantheone
а как сделать, если нету прямого доступа к селекту?

Как вариант...

<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
window.onload=function() {
	document.getElementById('siF21').onchange=function () {
		setValue(this);
	};
};
function setValue(Obj){
	document.getElementById('siF4').value=Obj.value;
};
</script>
</head>
<body>
<select name="bm" id="siF21">    
	<option value="" ></option>    
	<option value="x" >Месяц</option>    
	<option value="1">Январь</option>    
	<option value="2">Февраль</option>    
	<option value="3">Март</option>    
	<option value="4">Апрель</option>    
	<option value="5">Май</option>    
	<option value="6">Июнь</option>    
	<option value="7">Июль</option>    
	<option value="8">Август</option>    
	<option value="9">Сентябрь</option>    
	<option value="10">Октябрь</option>    
	<option value="11">Ноябрь</option>    
	<option value="12">Декабрь</option>    
</select>
<input name="csign" size="10" type="text" id="siF4" />
</body>
</html>

bohdantheone 30.11.2011 04:45

спасибо, разобрался


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