[英]Error when Calling Jquery Function from Javascript
I am getting the error at the line : 我在行中得到错误:
validate(); validate();
When I trying to call the following jQuery function 当我尝试调用以下jQuery函数时
(function ($) {
"use strict";
var methods = {
validate: function () {
if ($(this).is("form"))
return methods._validateFields(this);
else {
// field validation
var form = $(this).closest('form');
var options = form.data('jqv');
var r = methods._validateField($(this), options);
if (options.onSuccess && options.InvalidFields.length == 0)
options.onSuccess();
else if (options.onFailure && options.InvalidFields.length > 0)
options.onFailure();
return r;
}
}
}
Using the following JavaScript, I am getting the error at validation function. 使用以下JavaScript,我在验证功能时遇到错误。
<script type="text/javascript">
function dateSelectionChanged(sender, args) {
$(function () {
validate();
});
}
</script>
The function validate has been described in the above jQuery. 上面的jQuery中已经描述了validate函数。
You need to expose methods
to other functions - put it in the global scope. 您需要将
methods
公开给其他函数-将其放在全局范围内。
So either use the global window
object and do: 因此,可以使用全局
window
对象并执行以下操作:
window.methods =
For example: 例如:
(function ($) {
"use strict";
window.methods = {
validate: function () {...
Or define it first outside of (function($){...})
或首先在
(function($){...})
之外定义它
For example: 例如:
var methods = {};
(function ($) {
"use strict";
methods = {
validate: function () {...
Notice no var
before second methods
. 注意第二种
methods
之前没有var
。
Then you can call methods.validate()
然后可以调用
methods.validate()
Also: ensure you close (function ($) {
with })(jQuery)
- it's missing from the code that you posted. 另外:确保关闭
(function ($) {
with })(jQuery)
-您发布的代码中缺少该功能。
Try this:
var methods = {
validate: function () {
if ($(this).is("form"))
return methods._validateFields(this);
else {
// field validation
var form = $(this).closest('form');
var options = form.data('jqv');
var r = methods._validateField($(this), options);
if (options.onSuccess && options.InvalidFields.length == 0)
options.onSuccess();
else if (options.onFailure && options.InvalidFields.length > 0)
options.onFailure();
return r;
}
}
<script type="text/javascript">
function dateSelectionChanged(sender, args) {
methods.validate();
}
</script>
I have fixed it !! 我已经解决了!
I have called jQuery("#aspnetForm").valid(); 我叫jQuery(“#aspnetForm”)。valid();
I Have created a function called valid() 我创建了一个称为valid()的函数
Like this : 像这样 :
$.fn.valid = function (method) {
methods._validateFields(this);
};
Now its fine .... ! 现在很好....!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.