<script type="text/javascript">
<!--
$(document).ready(function() {
$("#form1").validate({
rules: {
budget: {
required: true,
minlength:3
} ,
duration: {
required: true,
digits:true
},
town: {
required: true,
minlength:2
},
content: {
required: true,
minlength:300
}
},
messages: {
}
});
});
-->
</script>
包含两个jquery文件。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="../common/jquery.validate.js"></script>
包括在内。包含没有任何问题。
我收到了错误消息
$(“#form1”)。validate不是函数 怎么了?
答案 0 :(得分:32)
我刚刚遇到了这个非常令人沮丧的错误,因为在网上缺乏可行的答案,因此失去了一小时的大部分时间。我在Firebug中确认我正在使用CDN进行jQuery和验证。
最后,改变这个:
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.4.min.js"></script>
到此:
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.4.min.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script>
就是我所需要的一切。
答案 1 :(得分:19)
我有同样的问题。事实证明,我在页面上多次加载jQuery JavaScript文件。这是由于包含页面(或JSP,在我的情况下)。一旦我删除了对jQuery js文件的重复引用,这个错误就消失了。
答案 2 :(得分:4)
我遇到了同样的问题,是的,我首先包含了jquery,然后是jquery validate脚本。我不知道出了什么问题。事实证明我使用的是已移动的验证网址。我通过以下方式解决了这个问题:
在我的情况下,我在尝试获取时遇到了403 Forbidden错误(http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js,在{{3}的示例中使用})。
原来那个链接(http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js)已移至http://rocketsquared.com/wiki/Plugins/Validation(当我加载时,Firebug告诉我这个本地文件而不是我的网络服务器上。)
注意:我也尝试使用微软的CDN链接,但是当我尝试使用正确的URL加载浏览器中的javascript文件时失败,CDN网站上出现了一些奇怪的问题。
答案 3 :(得分:2)
您需要将最新的http://ajax.microsoft.com/ajax/jquery.validate/1.5.5/jquery.validate.js与Microsoft的CDN结合使用才能获取验证文件。
答案 4 :(得分:2)
有同样的问题;经过验证的HTML&amp;发现我错过了name="email"
的{{1}}属性。始终确认HTML 正面您的HTML有效。添加后,<input />
完美运行。
答案 5 :(得分:1)
确保jQuery使用的是$ variable,而不是另一个javascript框架。
检查你的doctype:验证你的html,有时浏览器看不到怪异模式的东西,或者当它们包含格式错误的html时。
还要确保jquery.validate.js文件正确无误。
您可以在下面下载:
http://bassistance.de/jquery-plugins/jquery-plugin-validation/
答案 6 :(得分:1)
检查您是否使用代理。
我在Mozilla Firefox中遇到了这个问题,我认为这与Firefox本身有关。后来我发现我正在使用代理服务器。 当我取消选中代理时,一切都很顺利。
答案 7 :(得分:1)
浏览器可能首先下载了验证脚本,然后是jQuery。如果在加载jQuery之前下载了验证脚本,则会出现错误。您可以使用像firebug这样的工具来查看。
试试这个:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script>
function LoadValidade() {
var a = false;
try {
var teste = $('*');
if(teste == null)
throw 1;
} catch (e) {
a = true;
}
if (a){
setTimeout(LoadValidade, 300);
return;
}
var validadeScript = document.createElement("script");
validadeScript.src = "../common/jquery.validate.js";
$('head')[0].appendChild(validadeScript);
}
setTimeout(LoadValidade, 300);
</script>
答案 8 :(得分:1)
我对问题的解决方案:
在页脚中添加<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-form-validator/2.3.26/jquery.form-validator.min.js"></script>
答案 9 :(得分:0)
如果您有链接,我可以查看问题是什么,但这里有几个问题和要检查的事项:
此外,如果您要使用Google CDN获取jQuery,您也可以使用Microsoft的CDN获取验证文件。这些网址中的任何一个都可以使用:
答案 10 :(得分:0)
也许很傻,但检查你的内联脚本是否包含脚本标签。
答案 11 :(得分:0)
我有这个问题,jquery URL有效,一切看起来都很好,验证仍然有效。在刷新CTL + F5之后,Chrome中的错误就消失了。
答案 12 :(得分:0)
在我的情况下,我将验证部分移到了文档就绪函数之外,它对我来说很好。我希望它适合你...
$(document).ready(function () {
// paste validate function outside of the document ready function...
});
$('#form1').validate({
rules: {
English_Name: { required: true, minlength: 3 },
Arabic_Name: { required: true, minlength: 3 },
latitude: { required: true, min: 16, max: 32, number: true },
longitude: { required: true, min: 32, max: 52, number: true },
EmployeeID: { required: true },
PaymentTypeID: { required: true },
BusinessTypeID: { required: true },
SalesTypeID: { required: true },
OutletLength: { required: true },
OutletWidth: { required: true },
CONTACT_PERSON: { required: true },
MOBILE_NO: { required: true, minlength: 9, maxlength: 13, digits: true },
TRADE_LIC_DATE: { dateValidation: true },
CreditLimit: { min: 0, max: 2000000 },
CreditPeriod: { min: 0, max: 365 },
EMAIL_ADDRESS: { email: true },
BusinessClassID: { required: true },
CustomerClassificationID: { required: true },
LicenseTypeID: { required: true }
},
message: {
English_Name: {
required: ''
},
ToDate: {
required: ''
}
},
submitHandler: function (form) { // for demo
$.ajax({
type: 'POST',
url: '/sfa/Verification/SaveDataInDatabase',
data: $('form').serialize(),
beforeSend: function () {
$('.submitBtn').attr("disabled", "disabled");
$('.modal-body').css('opacity', '.5');
},
success: function (msg) {
$("#form1").trigger('reset');
$('.modal').modal('hide');
$('.submitBtn').removeAttr("disabled");
$('.modal-body').css('opacity', '');
}
});
}
});