2013-10-18 48 views
0

當文本從文本框中移除時,文本框會變爲紅色邊框。但是,textarea不遵循這種行爲。有什麼問題,我該如何補救?需要的textarea不會變紅

http://jsfiddle.net/cKYNy/9/

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <meta charset="ISO-8859-1" /> 
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scaleable=no" /> 

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css"> 
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
<script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script> 

</head> 

<body> 
    <div data-role="page" id="page_1" data-theme="b"> 


    <div data-role="content" data-theme="b" style="padding:0px;margin:0;"> 
     <p>Content Page 1</p> 
     <form name="contactForm" id="contactForm" data-ajax="false" method="post"> 
     <div> 
      <input type="text" id="name" name="name" value="" required="true"></input> 
     </div> 
     <div> 
      <input id="email" name="email" type="email" value="" required="true"></input> 
     </div> 
     <div> 
     <textarea name="message" id="message" required="true"></textarea> 
     </div> 
     <div> 
      <input type="submit" name="submit" id="submit" value="Submit"></input> 
     </div> 
</form> 
    </div> 
</div> 

</body> 
</html> 
+0

變紅怎麼辦?你添加類?如果是的話,告訴我們的代碼請。 – Omar

+0

@Omar我的意思是它有一個紅色的邊框。這是由jquery-mobile完成的。 – Baz

+0

你使用jQuery驗證嗎?你提交時是否將類添加到空輸入? – Omar

回答

0

如果不是jQuery Mobile的一個選項,您可能會想嘗試以下操作:

$("#contactForm").submit(function (e) { 
    e.preventDefault(); 
    if ($('#name')[0].checkValidity() === false) { 
     $('#name')[0].toggleClass("error"); 
    } 
} 

趕上表單的提交事件,從提交停止並檢查驗證你自己。如果無效,請添加錯誤類。