6
我很難讓jQuery驗證插件按我的需要工作。請與我裸露,因爲我沒有JQ專家:).valid()只驗證jQuery驗證插件的第一個輸入
我所擁有的是幾個所需輸入的形式,規則如下顯示:
$("#makeEvent").validate({
onfocusout: false,
rules: {
name: {
required: true,
minLength: 2,
maxLength: 100
},
host: {
required: true,
minLength: 2,
maxLength: 100
},
startDate: {
required: true,
date: true
},
endDate: {
required: true,
date: true
},
desc: {
required: true,
minLength: 10,
maxLength: 255
},
webpage: {
required: false,
url: true
},
email: {
required: true,
email: true
},
}
});
現在我有一個自定義的。點擊()調用在那裏我想驗證表單,然後在允許他們發送表單之前顯示用戶的預覽。請參閱下面的功能:
$('#submitPreview').click(function() {
if($("#makeEvent").valid() === false) {
//What to do if validation fails
} else if($("#makeEvent").valid() === true) {
//Show the preview and let the user either make changes or submit the final result
}
});
但是,什麼情況是,該功能僅驗證第一輸入(名稱),甚至驗證它錯誤地(規則最少需要2個字符,它仍然只用1個字符驗證如果沒有添加任何字符,它只會返回false)。
也許我的方法並不是最好的,所以我都樂於接受任何建議。如果你想看看凌亂的源代碼,你可以看到這裏的功能:http://event.gusthlm.se/make.php
謝謝!
你猜怎麼着?這解決了這個問題。我永遠都不會猜到......謝謝! – 2010-08-04 16:11:57
我知道這是舊的,但我有一個問題,我不能有名稱字段。我使用Stripe驗證信用卡,並保持信用卡信息不會觸及我們的服務器,因此我們必須排除name屬性。我也很好奇爲什麼name屬性對客戶端驗證有任何影響? – computrius 2012-11-05 14:53:23
@computrius,因爲jQuery Validate插件需要'name'屬性......開發者決定插件應該跟蹤輸入的方式。 – Sparky 2013-06-26 17:08:51