Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.06.2013, 10:45
Интересующийся
Отправить личное сообщение для Incondition Посмотреть профиль Найти все сообщения от Incondition
 
Регистрация: 17.06.2013
Сообщений: 11

Не запускается пользовательская функция в теге select
Объявляю функцию:

<script type='text/javascript'>
function showDay(){
alert('dkfjghdfkjg');
}
</script>

затем я по-разному уже пробовал:

<select class="month" id="month" onFocus="alert('showDay');" onChange="alert('Item with index ' + this.selectedIndex + ' selected.'); alert('utyu');">
<option>Январь</option>
<option selected onClick="alert('showDay');">Февраль</option>
<option>Март</option>
<option>Апрель</option>
</select>

Так работают все алерты.
вот так уже не работает (просто вызов функции не происходит):

1) onChange="showDay();"
2) onChange="alert(showDay());"
3) onChange="alert(showDay);"
4) onFocus="showDay();"
5) onFocus="alert(showDay());"
6) onFocus="alert(showDay);"
7) onClick="showDay();"
8) onClick="alert(showDay());"
9) onClick="alert(showDay);"

Естественно мне нужно запустить именно showDay() но все эти варианты показывают что не запускается все что связано с пользовательской функцией.

Я в javascript новичек, можно сделать через php но всетки так было бы красивее и круче...
Ответить с цитированием
  #2 (permalink)  
Старый 17.06.2013, 11:02
Интересующийся
Отправить личное сообщение для Solonik Посмотреть профиль Найти все сообщения от Solonik
 
Регистрация: 14.06.2013
Сообщений: 29

<html>

<head>
<script type='text/javascript'>
function showDay(){
alert('dkfjghdfkjg');
}
</script>
</head>
<body>
<select class="month" id="month" " onChange="showDay()">
<option>Январь</option>
<option>Февраль</option>
<option>Март</option>
<option>Апрель</option>
</select></body>

</html>


Я так понимаю чтобы при изменения option вызывалась функция ? Тогда проще так сделать.
Ответить с цитированием
  #3 (permalink)  
Старый 17.06.2013, 11:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Incondition,

<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script type='text/javascript'>
 function showDay(){
 alert('dkfjghdfkjg');
 }
 </script>
</head>

<body>
<select class="month" id="month"  onChange="alert(showDay());showDay();alert('Item with index ' + this.selectedIndex + ' selected.'); alert('utyu');">
 <option>Январь</option>
 <option selected >Февраль</option>
 <option>Март</option>
 <option>Апрель</option>
 </select>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 17.06.2013, 13:18
Интересующийся
Отправить личное сообщение для Incondition Посмотреть профиль Найти все сообщения от Incondition
 
Регистрация: 17.06.2013
Сообщений: 11

Хух(( простите, ваш код работает, мой нет... вот мой код:

<!DOCTYPE HTML>
<html>
<head>
 <title>Untitled</title>
<meta charset="utf-8">
 <script type='text/javascript'>
function showDay(){
 alert('dkfjghdfkjg');
 if (!year%4 && month=='Февраль') {
			document.getElementById("day1")[28].innerHTML = "29";
			document.getElementById("day1")[29].innerHTML = "";
			document.getElementById("day1")[30].innerHTML = "";
		} else if (month=='Февраль'){
			document.getElementById("day1")[28].innerHTML = "";
			document.getElementById("day1")[29].innerHTML = "";
			document.getElementById("day1")[30].innerHTML = "";
		}
		else {
			switch (month){
			case: 'Январь'
			case: 'Март'
			case: 'Май'
			case: 'Июль'
			case: 'Август'
			case: 'Октябрь'
			case: 'Декабрь'
				document.getElementById("day")[29].innerHTML = "30";
				document.getElementById("day")[30].innerHTML = "31";
				break;
			default:
				document.getElementById("day")[29].innerHTML = "30";
				document.getElementById("day")[30].innerHTML = "";
		}
 }
 
	 </script>
</head>
	 
<body>
<form>
	<select class="year" id="year"> 
	<?php 
	for($i=2012; $i>=1900; $i--)
	{
		 echo ("<option>".$i."</option>"); 
	}
	?>
	</select>
	<select class="month" id="month" onChange="showDay();">
	<option>Январь</option>
	<option selected>Февраль</option>
	<option>Март</option>
	<option>Апрель</option>
	<option>Май</option>
	<option>Июнь</option>
	<option>Июль</option>
	<option>Август</option>
	<option>Сентябрь</option>
	<option>Октябрь</option>
	<option>Ноябрь</option>
	<option >Декабрь</option>
	</select>
	<select class="day" id="day">
	 
	<?php 
	for($i=1; $i<=28; $i++)
	{
		 echo ("<option>".$i."</option>"); 
	}
	?>
	</select> 
	 </form>
</body>
</html>


Понимаю, тут много недочетов но помогите сделать чтобы хоть запускалась...

Последний раз редактировалось Incondition, 17.06.2013 в 13:22.
Ответить с цитированием
  #5 (permalink)  
Старый 17.06.2013, 13:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от Incondition
if (!year%4 && month=='Февраль') {
интересно откуда в эту строку прилетят год и месяц
Ответить с цитированием
  #6 (permalink)  
Старый 17.06.2013, 13:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Incondition,
для кругозора 18.05.2006 Javascript SELECT - динамические списки

http://learn.javascript.ru/form-elements#select-option

Последний раз редактировалось рони, 17.06.2013 в 13:46.
Ответить с цитированием
  #7 (permalink)  
Старый 17.06.2013, 14:06
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Incondition
case: 'Январь'
Че за конструкция? Имелось ввиду case 'Январь': ? Также сосчитай количество открывающих фигурных скобок и количество закрывающих.
Ответить с цитированием
  #8 (permalink)  
Старый 17.06.2013, 14:22
Интересующийся
Отправить личное сообщение для Incondition Посмотреть профиль Найти все сообщения от Incondition
 
Регистрация: 17.06.2013
Сообщений: 11

как я могу проверить код если функцию запустить не могу. Запущу и по исправляю. Спасибо всем за замечания по коду функции но удосуждесь объяснить кто понимает: почему не запускается функция? не трогайте код, там я разберусь, помогите функцию запустить.
Ответить с цитированием
  #9 (permalink)  
Старый 17.06.2013, 14:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Incondition,
month это у вас селект -- элемент он никогда не будет равен февралю в нормальном случае. но у селекта что-то есть что может быть февралём.
Ответить с цитированием
  #10 (permalink)  
Старый 17.06.2013, 15:36
Интересующийся
Отправить личное сообщение для Incondition Посмотреть профиль Найти все сообщения от Incondition
 
Регистрация: 17.06.2013
Сообщений: 11

хорошо, я понял, но я не могу понять почему не запускается функция showDay(), она ведь должна запускаться при смене месяца, этого не происходит
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
пользовательская функция imediasun1 Элементы интерфейса 1 25.05.2013 20:53
наложение картинки для кнопки со стрелкой в теге select Nailya (X)HTML/CSS 2 17.05.2013 10:21
Метод для конвертирования едениц px, em, %, pt. jegit Элементы интерфейса 0 07.03.2013 16:15
Не запускается callback функция в Ext.Loader.Require DofD ExtJS 2 05.12.2012 20:49
Проблема с динамическим формированием select elepsion jQuery 1 31.10.2010 14:31