我正在编写一个jQuery插件,但它始终返回Object对象,这里面是代码:
$.fn.plugin = function(options) {
var defaults = {
rules : []
}
var options = $.extend(defaults, options);
return this.each(function() {
var o = options;
var rules = o.rules;
var i=0;
var isValable = true;
var string = "";
for (i=0;i<=((rules.length)-1);i++)
{
$('.'+rules[i][0]).each(function(index) {
var val = $(this).val();
var $elm = $(this);
if(!(rules[i][2](val, $elm)))
{
if (!$elm.hasClass('validation-failed')) $elm.addClass('validation-failed');
$elm.after('<div class="validation-advice" id="advice-' + rules[i][0] + '-' + $elm.attr('id') +'" style="display:none">' + rules[i][1] + '</div>');
isValable = false;
}
else if (!$elm.hasClass('validation-passed')) $elm.addClass('validation-passed') ;
});
}
return isValable;
});
}
调用alert($('myselector').plugin())
时我得到了Object对象
谢谢你的帮助
答案 0 :(得分:0)
不确定是不是问题,因为你没有显示你是如何调用插件的,但它应该是
return $(this).each(function()...
答案 1 :(得分:0)
由于双重回归我遇到了问题,删除第一个解决了它!