有没有办法基本上可以做到这一点?
var a= $(".object-type").change(function()
{
//somecode
}
然后调用a();在另一个功能,如
$("#selectAll").change(function () {
if($(this).attr("checked"))
{
a();
}
else
{
//some code
}
答案 0 :(得分:4)
你可以这样做
$(".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
});
示例Demo
答案 1 :(得分:1)
var a= function()
{
//somecode
}
$(".object-type").change(a);
$("#selectAll").change(function () {
if($(this).attr("checked"))
{
a();
}
else
{
//some code
}
答案 2 :(得分:1)
如果您只想模拟change
$(".object-type")
事件,为什么不能尝试jQuery提供的trigger事件。
$("#selectAll").change(function () {
if($(this).prop("checked"))
{
$(".object-type").trigger("change");
//you could also use this
$(".object-type").change();
}
else
{
//some code
} });
答案 3 :(得分:0)
你在这里要问的并不完全清楚。如果你想要两个不同的jquery触发器来使用相同的功能,那么你想从jquery触发器中提取回调函数:
var a = function(event){//do something};
$('.class1').change(a);
$('.class2').change(a);
当更改class1或class2时,将调用相同的函数。
如果你想要一个jquery触发器执行另一个jquery触发器,那么你可以随便trigger
它:
$('.class1').change(function(event){//do something});
$('.class2').change(function(event){
$('.class1').trigger('change');
// do something else
});