2013-02-26 4 views
1

Я пытаюсь создать отправку формы и перед отправкой формы, я хочу проверить учетные данные.Проверка формы JavaScript

У меня есть и это до сих пор

HTML отформатирован для XHTML

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> 
     <head> 
      <title> Registration Form</title> 
      <meta http-equiv="content-type" content="text/html; charset=utf-8"/> 
      <meta name="description" content="This is a form submission with validation"/> 
      <script type="text/javascript" src="validScript.js"></script> 
     </head> 

     <body> 
      <h1>Registration Form</h1> 
      <form id="registration" action="" onsubmit="return validation();" method="post" enctype="text/plain"> 
       <p>Name: <input type="text" name="name" id="name"/></p> 
       <p class="error">Email Address: <input type="text" name="emailAddress" id="emailAddress"/></p> 
       <p><input type="submit" name="submit" value="Submit"/></p> 
      </form> 
     </body> 

    </html> 

JavaScript:

function validation() 
{ 
    var vname = document.registration.name; 

    if(nameValid(vname)) 
    { 
     return true; 
    } 
    return false; 
} 

function nameValid(vname) 
{ 
    var name_len = vname.value.length; 
    if (name_len == 0) 
    { 
     alert("Name is required"); 
     vname.focus(); 
     return false; 
    } 
return true; 
} 

У меня возникли проблемы, где он не будет отображаться предупреждения пользователя о том, что он/она подсказала пустое имя. Я пытаюсь ввести имя, и после этого я добавлю дополнительные функции для адреса электронной почты и других полей, которые нужно добавить. Обратите внимание, что это позже будет использоваться для отправки формы электронной почты в домен. Может ли кто-нибудь помочь мне разобраться в этой проблеме?

Благодаря

ответ

1

ваша функция проверки неверен, должно быть:.

function validation() 
{ 
    var vname = document.getElementById("name"); 

    if(nameValid(vname)) 
    { 
     return true; 
    } 
    return false; 
} 

Для значений формы доступа к элементам использовать document.getElementById ("ElementID") значение или использовать библиотеку JavaScript, как Jquery

+0

спасибо. Это сработало. У меня было ощущение, что это возможно, потому что я неправильно понял свойства документа. – user1709294

0

В form добавить имя = "Регистрация", а затем проверить. он будет предупреждать, как вы хотите.

и причина document.registration.name, где регистрация - это имя формы, а не идентификатор.

0

Если вы» повторно с помощью JQuery я могу рекомендовать этот плагин:

http://validval.frebsite.nl/

Я пытался некоторое подтверждение PLU джины, прежде чем я пришел к этому: он имеет обширные варианты проверки, и это не слишком причудливо в диалогах; Это упрощает настройку внешнего вида.