2015-11-02 2 views
0

Привет, ребята, у меня есть этот код, но я не уверен, что я сделал неправильно. Как только я наберу свой номер в текстовое поле, и я щелкнув, подсчет ничего не произойдет.Even Function Javascript

<html> 
<head> 
    <title>Week 3 - Exercise 3-3</title> 
    <script type="text/javascript"> 
     function evenTest(num1) { //function receives one parameter 
      var num=num1;   //create and assign variable to number passed 

      (num % 2==0) ? akert("Number is even"):alert("Number is odd"); 
      if (num>20) { 
        alert("Number is > 20"); 
      } 
      else { 
        alert("Number is not greater than 20"); 
               //message if <=20 
      }         //end else 
     }          //end function 
    </script> 
</head> 
<body> 
    <h1>Exerise 3-3 - Even Function</h1> 
    <form name="form1"> 
     Enter a number:<input name="firstNum" type="text"/><br/> 
     <input type="button" value ="Calculate" onclick=evenTest(form1.firstNum.value)/> 
    </form> 
</body> 

+0

там происходит много плохого в этом коде, прежде чем кто отвечает, видите ли вы какие-либо ошибки, инструменты разработчика консоли? –

+0

Ваш код содержит одну очевидную ошибку синтаксиса –

+0

У вас есть ошибка при орфографии: 'akert' вместо 'alert'. Пожалуйста, используйте инструмент разработчика браузера (нажмите F12 в браузере) и проверьте этот тип ошибок перед отправкой вопроса. –

ответ

0

Это происходит из-за синтаксической ошибки/опечатки в коде и HTML

JS

сделать

akert("Number is even") 

Для

alert("Number is even") 

Таким образом, функция JS будет

function evenTest(num1) { //function receives one parameter 
     var num=num1;   //create and assign variable to number passed 

     (num % 2==0) ? alert("Number is even"):alert("Number is odd"); 
     if (num>20) { 
       alert("Number is > 20"); 
     } 
     else { 
       alert("Number is not greater than 20"); 
              //message if <=20 
     }         //end else 
    }          //end function 

и HTML будет

// помещает вызов функции в цитате

<input type="button" value ="Calculate"onclick="evenTest(form1.firstNum.value)"/> 
+1

ответы должны ответить на вопрос, а не просто выбрать один из множества проблем - и это, вероятно, опечатка –

+0

Да, я исправлен но он все еще не работает. – GrumpyBro

1
<html> 
<head> 
    <title>Week 3 - Exercise 3-3</title> 
    <script type="text/javascript"> 
     function evenTest(num1) { //function receives one parameter 
      var num=num1;   //create and assign variable to number passed 

      (num % 2==0) ? alert("Number is even"):alert("Number is odd"); 
      if (num>20) { 
        alert("Number is > 20"); 
      } 
      else { 
        alert("Number is not greater than 20"); 
               //message if <=20 
      }         //end else 
     }          //end function 
    </script> 
</head> 
<body> 
    <h1>Exerise 3-3 - Even Function</h1> 
    <form name="form1"> 
     Enter a number:<input name="firstNum" type="text"/><br/> 
     <input type="button" value ="Calculate" onclick="evenTest(form1.firstNum.value)"/> 
    </form> 
</body> 
  • Вашего OnClick не в кавычках
  • вы неправильно набранный оповещения, как akert

лично я бы не стал полагаться на form1 быть глобальной переменной либо - но выше код работает по назначению

+0

Thankyou очень – GrumpyBro

+0

Почему я вижу «Uncaught ReferenceError: evenTest не определен», когда я запускаю этот код в jsfiddle.This является ссылкой на скрипт https://jsfiddle.net/pxgjj8qL/ – brk

+0

, потому что вы разделили код и html на jsfiddle - измените js на 'nowrap in head' или' nowrap in body', и он чудесным образом работает, как я сказал, он сделал –

0

Этот код может быть полезным

HTML Изменения

<h1>Exerise 3-3 - Even Function</h1> 
    <form name="form1"> 
     Enter a number:<input name="firstNum" id='ipV' type="text"/><br/> 
     <input type="button" value ="Calculate" id="calB"/> 
    </form> 

JS Изменения

var x= document.getElementById('calB'); 
     x.addEventListener('click',function(){ 
    var _getNumber = document.getElementById('ipV').value 
     evenTest(_getNumber); 

    }) 
    function evenTest(num1) { //function receives one parameter 
     var num=num1;   //create and assign variable to number passed 
      (num % 2==0) ? alert("Number is even"):alert("Number is odd"); 
       if (num>20) { 
         alert("Number is > 20"); 
       } 
       else{ 
        alert("Number is not greater than 20"); 
       }         
      } 

jsfiddle

+0

, почему ваш код предупреждает, не нажимая кнопку? –

+0

моя ошибка не прикрепила права скрипта URL – brk