2014-09-04 2 views
0

У меня есть этот JavaScript-код в головной части PHP файла:JavaScript форма проверки не проверяет наличие ошибок

<script language="JavaScript" type="text/javascript"> 
     function validateFirstName(field) 
     { 
      if (field == "") 
      { 
       return "Please enter a first name.\n"; 
      } 
      else if (/[^a-zA-Z]/.test(field)) 
      { 
       return "Invalid first name.\n"; 
      } 
      return ""; 
     } 
     function validateLastName(field) 
     { 
      if (field == "") 
      { 
       return "Please enter a last name.\n"; 
      } 
      else if (/[^a-zA-Z]/.test(field)) 
      { 
       return "Invalid last name.\n"; 
      } 
      return ""; 
     } 
     //more functions eliminated 
     function validate(form) 
     { 
      fail = validateFirstName(form.firstname.value); 
      fail += validateLastName(form.lastname.value); 
      //and so forth 

      if (fail == "") 
      { 
       return true; 
      } 
      else 
      { 
       alert(fail); 
       return false; 
      } 
     } 
    </script> 

и форма:

<form action="StudentSignUpPageAddingData.php" method="post" onsubmit="return validate(this)"> 
    <p id="p3">First Name: <input id="roundedcorners" type="text" name="firstname"><br></p> 
    <p id="p3">Last Name: <input id="roundedcorners" type="text" name="lastname"><br></p> 
//and so forth 
    <input id="i1" type="submit" value="Done!"> 
</form> 

Когда я запускаю его, хотя , программа переходит к коду в StudentSignUpPageAddingData.php. Я новичок в PHP и JavaScript, поэтому мне интересно, есть ли проблема с вызовом onsubmit. Должен ли я также рассмотреть возможность вставки кода JavaScript в отдельный файл и просто ссылки на него в файле PHP?

+4

Работы здесь http://jsfiddle.net/j08691/3pwugjyx/. Вы проверили консоль браузера на наличие ошибок? – j08691

+0

Все ли ваш код в одном файле php? Если нет, ваш javascript должен быть в (или включен) в тот же документ, что и форма. – showdev

+0

Почему у вас одинаковый 'id' на обоих полях? ... они должны быть уникальными. Кроме того, если он называется «roundedcorners», это больше похоже на «класс», чем «id». – Sparky

ответ

Смежные вопросы