关于jquery插件调用及返回问题

$.fn.formValidate2 = function(fn){

}

//使用插件
$(".btn").formValidate2(function(){
alert(234);
});

问1:为何alert 不弹出

$.fn.formValidate2 = function(fn){

    $(this).click(function(){

        return "cc";

    });

}



问2 : 插件里面的 return 值,如何接收

谢谢

2个回答

1,
$.fn.formValidate2 = function(fn){
}
中没有调用fn方法,所以不会弹出alert,修改:
$.fn.formValidate2 = function(fn){
if(fn){
fn();
}
}

2,
$.fn.formValidate2 = function(fn){
$(this).click(function(){
return "cc";
});
}
return 是在click里执行的,上级函数接受不到返回值,并且click是异步执行的,可以用一个变量记录cc

var cc;
$.fn.formValidate2 = function(fn){
$(this).click(function(){
cc = "cc";
});
}

 $.fn.formValidate2 = function(fn){
    this.click(function(){    
        fn("cc");   
    });
}
$(".btn").formValidate2(function(value){
    alert(value);
});
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐