2010-05-25 21 views
0

當其他javascript函數改變選中的狀態時,我需要觸發change事件。 簡化代碼如下。我無法從MyOtherFunc()調用MyFunc()。如何使用JavaScript更改檢查狀態時觸發/調用事件?

的jQuery:

$(document).ready(function(){ 
    $('input:radio[name=rdName]').change(function(){ 
    MyFunc(); 
    }); 
}); 
function MyFunc(){ 
    //do stuff 
} 
function MyOtherFunc(){ 
    $('input:radio[name=rdName]')[0].checked = true; 
    // Was unable to have it change based on a value 
} 

單選按鈕:

<input type="radio" name="rdName" value="1"> 
<input type="radio" name="rdName" value="2"> 
<input type="radio" name="rdName" value="3"> 

回答

2
$('input:radio[name=rdName]').change(); 
+1

+1在重讀該問題後刪除了我的答案,並意識到這是專門針對某個事件發起的。 – user113716 2010-05-25 13:32:34

+0

這是訣竅! – Gutzofter 2010-05-25 14:58:24

5
$(document).ready(function(){ 
    $('input:radio[name=rdName]').change(function(){ 
    MyFunc(); 
    }); 
}); 
function MyFunc(){ 
    //do stuff 
} 
function MyOtherFunc(){ 
    $('input:radio[name=rdName]').attr('checked', 'checked').trigger('change'); 

} 
1

試試這個

$(document).ready(function(){ 
    $('input:radio[name=rdName]').bind('customChange',function(){ 
    MyFunc(); 
    }); 
}); 
function MyFunc(){ 
    alert("it's work") 
} 
function MyOtherFunc(){ 
    $('input:radio[name=rdName]')[0].checked = true; 
    $('input:radio[name=rdName]').trigger('customChange'); 
} 

如果你有一些公關可以使用的範圍.trigger(eventType, extraParameters)

相關問題