Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Функция в функции (https://javascript.ru/forum/misc/46531-funkciya-v-funkcii.html)

saves7 14.04.2014 09:40

Функция в функции
 
Добрый день! Может кто объяснить как запускается функция в функции при запуске одной из них посредством oncklick. Вот так не работает:


<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title> Функция в функции</title>

</head>


<body>



function start() {
var a1=1;

function dovyvod() {
a1=a1+1;
document.getElementById("a1").innerHTML=a1;

}

}




<div>
Значение a1++
<div id="a1">	
Выводится здесь
</div>
	
</div>
</div>



<form>
<input type="button" value="Старт!" onclick="start()" />
</form>

</body>

Aetae 14.04.2014 09:46

dovyvod();

ksa 14.04.2014 09:51

Цитата:

Сообщение от saves7
Может кто объяснить как запускается функция в функции

Функции всегда запускаются одинаково...

<имя_функции>(<параметры>);

Erolast 14.04.2014 09:56

1. Заключай javascript-код на этом форуме в тег JS. Тогда он внезапно станет во много раз читабельнее.
2. В твоем коде ты объявил функцию dovyvod, область видимости которой ограничивается функцией start. Ты ее не запускал. Как запускать - уже сказали.

saves7 14.04.2014 10:21

Всем спасибо за ответы. А тег [js] только здесь работает?

ksa 14.04.2014 10:23

Цитата:

Сообщение от saves7
А тег [js] только здесь работает?

Это не тег... Эт т.н. БиБиКод... Этот форум его понимает и обрабатывает особым образом.

saves7 14.04.2014 10:32

Добавил запуск функции, но теперь вопрос почему onclick срабатывает только один раз?

<!DOCTYPE>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title> Функция в функции</title>

</head>


<body>

        var a1=1;
	function start() {
	
	function dovyvod() {	
	a1=a1+1;
	document.getElementById("a1").innerHTML=a1;
	 }
	 dovyvod();
	 }

<div>
Значение a1++
<div id="a1">
Выводится здесь
</div>
</div>


<form>
<input type="button" value="Старт!" onclick="start()" />
</form>

</body>

ksa 14.04.2014 10:46

Цитата:

Сообщение от saves7
почему onclick срабатывает только один раз?

А сколько раз он должен срабатывать? :blink:

P.S.
С форматированием кода ты так ничего и не понял... :-E

saves7 14.04.2014 11:12

onclick должен срабатывать каждый раз когда я нажимаю на кнопку, а у меня один раз срабатывает, конечно нужно в панели ошибок посмотреть, но сейчас нет возможности.

saves7 14.04.2014 11:14

Реализовал то что мне было нужно, перечислив в событии onclick функции через запитую, но почему предыдущий пример не работает мне не понятно :-E
<!DOCTYPE>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title> Функция в функции</title>

</head>


<body>
<script>
	var a1=1;
	var b=1;
	function start() {
		a1=a1+1;
	document.getElementById("a1").innerHTML=a1;
		 }

		 function dovyvod() {
		b=b+a1;
	document.getElementById("b").innerHTML=b;
		 }

</script>
<div>

Значение a1++
<div id="a1">
Выводится здесь
</div>
Значение b
<div id="b">
Выводится здесь
</div>
</div>




<form>
<input type="button" value="Старт!" onclick="start(), dovyvod()" />
</form>

</body>


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