我使用JörnZaefferer的優秀jquery.validation plugin,我想知道是否有一種簡單的方法在驗證之前自動修剪表單元素?jquery.validate插件 - 如何在表單驗證前修改值
以下是減少,但工作這驗證電子郵件地址的形式的例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"
type="text/javascript"></script>
<script src="http://ajax.microsoft.com/ajax/jquery.validate/1.5.5/jquery.validate.js"
type="text/javascript"></script>
<script type="text/javascript">
$().ready(function() {
$("#commentForm").validate({
rules: {
email: {
required: true,
email: true
}
}
});
});
</script>
</head>
<body>
<form class="cmxform" id="commentForm" method="get" action="">
<label for="cemail">E-Mail:</label><input id="cemail" name="email"
class="required email" />
<input class="submit" type="submit" value="Submit"/>
</form>
</body>
</html>
的問題是,一些用戶感到困惑,因爲他們意外地在他們的電子郵件地址輸入一些空白,例如「[email protected]」。該表單將不會提交,並顯示錯誤消息:「請輸入一個有效的電子郵件地址。」非技術用戶不知道如何發現空白,並可能只是退出網站,而不是試圖弄清楚他們做錯了什麼。
無論如何,我希望能夠在驗證之前鏈接「jQuery.trim(value)
」,因此刪除了 空白並且驗證錯誤從未發生過?
我可以使用addMethod來構建我自己的電子郵件驗證功能。但我相信有更優雅的解決方案?
大問題。 Jörn說他會修正這個插件本身的一部分。但那是大約一年前。我可以確認一個字段末尾的空格對我來說無效。我正在使用版本1.5.5。 (Jorn的文章:http://www.mail-archive.com/[email protected]/msg55651.html) – 2009-12-01 17:15:35
閱讀這個問題和所有的答案讓我感覺好像HTML是如此的糟糕。 – g33kz0r 2013-06-13 15:23:17