0

从文本框中删除文本时,文本框会出现红色边框。但是,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>
4

1 回答 1

0

如果它不是 JQuery Mobile 的选项,您可能想尝试以下操作:

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

捕获表单上的提交事件,停止提交并自己检查验证。如果无效,请添加错误类。

于 2013-10-18T10:33:30.307 回答