2012-01-18 5 views
0

Я разрабатываю веб-приложение, в котором я создал форму и в событии onSubmit формы, которую я назвал функцией java-скрипта, которая будет проверять условие «Поле не должно оставаться пустым», если он остается пустым, то форма не должна быть размещена таким образом, я написал следующий код:Проверка правильности поля Javascript не работает должным образом

Jsp страница форма

<form action="Result.jsp" name="validityCheck" onsubmit="return fnCheckEmptyField();"> 

<input type="text" name="txtIIDN" id="txtIIDN" style="font-size:medium;" onkeypress="return fnKeyPress(event)"/> 


<input type="submit" id="btnValidityCheck" value="Check Validity" /> 
</form> 

код Javascript следующим

<script> 
function fnCheckEmptyField() 
    { 
     var strDomain= document.getElementsByName("txtIIDN").value; 
     if(strDomain == null) 
     { 
      document.getElementById("lblValidityStatus").innerHTML=""; 
      document.getElementById("lblValidityStatus").innerHTML="Domain Name Field Can't be Left Blank"; 
      return false; 
     } 
     else 
     { 
      return true; 
     } 
    } 

</script> 

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

, а также условие в onsubmit случае onsubmit = "возвращение fnCheckEmptyField(); показывает мне ошибку не может вернуться из вне функции или метод.

Можете ли вы понять, что это ошибка, я и возможно совершали решение для этого?

+0

удалить действие формы в jsp, и если функция возвращает true, добавьте действие в конкретную форму. – Unknown

ответ

0

Удалить onsubmit событие на форме и в кнопке Передать HTML, поместите этот

<input type="submit" id="btnValidityCheck" value="Check Validity" onclick="return fnCheckEmptyField();" /> 
+0

Я пробовал это тоже, но он не работает –

0

Добавляя к тому, что сказал Furqan, вы должны, вероятно, использовать кнопку и событие onclick, чтобы проверить форму, и если форма действительна, затем вызовите .submit() в своей форме.

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

Пример (кнопка HTML отправить):

<button id="btnValidityCheck" value="Check Validity" onclick="return fnCheckEmptyField();">Click Here</button> 

функция JavaScript:

function fnCheckEmptyField() { 
    var strDomain= document.getElementsByName("txtIIDN").value; 
    if(strDomain == "") { 
     document.getElementById("lblValidityStatus").innerHTML="Domain Name Field Can't be Left Blank"; 
    } 
    else { 
     document.getElementById("myFormId").submit(); 
    } 
} 

Обратите внимание, что если Javascript считает, что форма является действительной, то он будет представлять вашу форму. Для этого вам нужно определить идентификатор для тега формы.

Кроме того, я изменил == нулевой чек == «» ... что может быть причиной проблем ...

Ура!

+0

Фактически нуль работает нормально с ним ..... а также функция выполняется, но проблема заключается в том, что после выполнения функции форма отправляется, поэтому из-за этой основной цели не отправлять форма или не перемещение на следующую страницу не достигнуто. –

+0

может быть что-то в сообщении об ошибке, показанном в событии onSubmit, то же самое отображается в событии onClick onsubmit = "return fnCheckEmptyField(), показывая мне ошибку. Не удается вернуться извне функция или метод. –

+0

Что делают мои коды: он не отправит форму до тех пор, пока она не узнает, что она действительна ... вместо того, чтобы отменить отправку формы. – tootsiejasmine