繁体   English   中英

jQuery将事件更改为变量

[英]Jquery change event to a variable

有什么办法可以基本做到这一点吗?

 var a= $(".object-type").change(function() 
 {
    //somecode
 }

然后调用a(); 在另一个函数中

$("#selectAll").change(function () {
                    if($(this).attr("checked"))
                    {
                        a();
                    }
                    else
                    {
                      //some code
                    }

你可以这样

$(".object-type").change(function() 
 {
    //somecode
 });


 $("#selectAll").change(function () {
   if(this.checked)
    {
         $(".object-type").trigger('change'); //Trigger the change event of a different element.
        // or just $(".object-type").change();
   //some code
 });

样本演示

var a= function() 
 {
    //somecode
 }

$(".object-type").change(a);

$("#selectAll").change(function () {
                    if($(this).attr("checked"))
                    {
                        a();
                    }
                    else
                    {
                      //some code
                    }

如果只想模拟$(".object-type")change事件,为什么不能尝试使用jQuery提供的触发事件。

$("#selectAll").change(function () {
 if($(this).prop("checked"))
 {
     $(".object-type").trigger("change");
     //you could also use this 
     $(".object-type").change();
 }
 else
 {
    //some code
 } });

您在这里问的内容还不是很清楚。 如果您希望两个不同的jquery触发器利用相同的功能,则要从jquery触发器中提取回调函数:

var a = function(event){//do something};
$('.class1').change(a);
$('.class2').change(a);

当更改class1或class2时,将调用相同的函数。

如果您想让一个jquery触发器执行另一个,则可以随意trigger它:

$('.class1').change(function(event){//do something});
$('.class2').change(function(event){
    $('.class1').trigger('change');
    // do something else
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM