2015-07-03 3 views
3

Я хочу использовать несколько функций в скрипте. Я не получаю вычисленное значение во втором текстовом поле. Я не знаю, что не так в моей программе. не возвращается.Несколько функций в javascript

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<script> 
function fun1() 
{ 
    var z=5; 
    function fun3(x) 
    { 
     alert("i am fun3"); 
     var y=x+z; 
    } 
    return y; 
} 
function fun2() 
{ 
    var a = document.getElementById("txt1").value; 
    var result = fun3(a); 
    document.getElementById("txt2").innerHTML=result; 
} 
</script> 
</head> 
<body> 
Enter no: <input type="text" value="" id="txt1" onkeydown="fun2();"> 
Result: <input type="text" value="" id="txt2" /> 
</body> 
</html> 
+2

'fun3' не может быть вызван из' fun2', поскольку она определена в 'fun1' и поэтому доступны только в это scope. Перемещайте его рядом с 'fun1' /' fun2' – CodingIntrigue

+0

u r right, но на самом деле это требование похоже на. У меня есть некоторая ценность в fun2(). и некоторое значение в fun3(). задача заключается в вычислении обоих значений и получении результата в текстовом поле2. – Nitish

ответ

2

Вы ищете что-то вроде этого?

function fun1(a) 
    { 
     var z=5, y; 
     function fun3(x) 
     { 
      alert("i am fun3"); 
      y=x+z; 
     } 
     fun3(a) 
     return y; 
    } 
    function fun2() 
    { 
     var a = document.getElementById("txt1").value; 
     var result = fun1(a); 
     document.getElementById("txt2").value=result; 
    } 

EDIT:

Я изменил: document.getElementById("txt2").innerHtml=result; с document.getElementById("txt2").value=result;, как txt2 является input Если нет, пожалуйста, точный ваш вопрос, я буду редактировать его, как только я имею больше деталей.

EDIT 2

@Nitish отделан нашел сам: jsfiddle.net/nitishkaushik/4sxb9d55/4

+0

sir i want (a + z) во втором текстовом поле. Условие: Значение a находится в fun2(). и значение z находится в fun1(). – Nitish

+0

, но результат не вычисляется по мере того, как мы нажимаем клавишу ... вы можете сделать это в jsfeedle. – Nitish

+0

вывод не прав. U запустите код – Nitish

0

это то, что я хочу. и я получил его. если кто-нибудь хочет, то они могут использовать :)

Введите №: Результат:

<script> 
function fun1(a) 
{ 
    alert("Debugging 1st level="+a); 
    var z=5, y; 
    function fun3(x) 
    { 
    alert("Debugging 2nd level="+x); 
     y= (parseInt(x) + parseInt(z)); 
    alert("Debugging 3rd level="+y); 
    } 
    fun3(a) 
    return y; 
} 

function fun2(val) 
{ var result=0; 

    alert("value is"+val); 
    var result = fun1(val); 
    alert("Debugging 4th level="+result); 
    document.getElementById("txt2").value=result; 
} 

</script> 
Смежные вопросы