2012-06-01 41 views
2

HTMLtextarea的空管檢查

<form name="myForm" id="myForm" onsubmit="return validate();" action="<?php echo $_SERVER['PHP_SELF']?>"> 
<input type="text" name="name" id="name"> 
<textarea name="details" id="details"></textarea> 
<input type="submit"> 
</form> 

的Javascript

function validate() 
{ 
     if(document.getElementById('details').value == '') 
     {  
     alert("Please Provide Details!"); 
       document.getElementById('details').focus(); 
     return false;  
     } 
     else if(document.getElementById('name').value == '') 
     {  
     alert("Please Provide Name!"); 
       document.getElementById('name').focus(); 
     return false;  
     } 
     else 
      return true; 
} 

OR

function validate() 
    { 
      if(document.myForm.details.value == '') 
      {  
      alert("Please Provide Details!"); 
       document.myForm.details.focus(); 
      return false;  
      } 
      else if(document.myForm.name.value == '') 
      {  
      alert("Please Provide Name!"); 
       document.myForm.name.focus(); 
      return false;  
      } 
      else 
       return true; 
    } 

我見過的代碼從以前的堆棧溢出,但因爲我使用這些和它不工作。任何人都可以幫助解決使用Javascript,而不是jquery檢查Textarea上的空值。

的參考我已經使用 how to check the textarea content is blank using javascript?How to check if a Textarea is empty in Javascript or Jquery?

+0

它應該工作FINE !,你必須在你的頁面有其他錯誤。在http://jsfiddle.net設置演示 – gdoron

+0

其工作正常!檢查您的網頁是否存在其他錯誤。 – Neji

回答

6

我想你可能對你的textarea的空間的問題。使用修剪功能來減少這一點。以下是示例。我希望它能解決你的問題。

的JavaScript添加此功能

function trimfield(str) 
{ 
    return str.replace(/^\s+|\s+$/g,''); 
} 

而JavaScript功能

function validate() 
{ 
    var obj1 = document.getElementById('details'); 
    var obj2 = document.getElementById('name'); 
     if(trimfield(obj1.value) == '') 
     {  
       alert("Please Provide Details!"); 
       obj1.focus(); 
       return false;  
     } 
     else if(trimfield(obj2.value) == '') 
     {  
       alert("Please Provide Name!"); 
       obj2.focus(); 
       return false;  
     } 
     else 
      return true; 
} 

OR

function validate() 
    { 
     var obj1 = document.myForm.details; 
     var obj2 = document.myForm.name; 
      if(trimfield(obj1.value) == '') 
      {  
       alert("Please Provide Details!"); 
       obj1.focus(); 
       return false;  
      } 
      else if(trimfield(obj2.value) == '') 
      {  
       alert("Please Provide Name!"); 
       obj2.focus(); 
       return false;  
      } 
      else 
       return true; 
    } 

和HTML與PHP

<form name="myForm" id="myForm" onsubmit="return validate();" action="<?php echo $_SERVER['PHP_SELF']?>"> 
<input type="text" name="name" id="name"> 
<textarea name="details" id="details"></textarea> 
<input type="submit"> 
</form>