我有一個jQuery函數,如下所示,我希望在複選框單擊時調用它。當我使用input type="checkbox"
它工作正常。但我想檢查/取消選中從C#代碼(fillform())複選框,並基於該函數也必須執行從asp.net調用javascript函數複選框
但如果我設置runat="server"
或如果我使用asp:checkbox
然後下面的函數不會被調用。 我嘗試使用下面的代碼爲asp:checkbox以及page_load中的輸入框。但功能不叫
C#代碼
Page_load
{
chkVehicle.Attributes.Add("onclick", "toggleVehicle();");
}
FillForm
{
chkVehicle.Checked = ObjUR.HasVehicle;
}
jQuery函數
function toggleVehicle() {
if ($('#chkVehicle').is(':checked')) {
$('#divVehicle :input').removeAttr('disabled');
$('#divVehicle').css({ "background-color": 'transparent' });
} else {
$('#divVehicle :input').attr('disabled', true);
$('#divVehicle').css({ "background-color": 'gray' });
}
}
請幫助
此方法的替代方法是通過的id控制到javascript函數 所以你的C#是 'chkVehicle.Attributes.Add( 「點擊」, 「toggleVehicle(」 + chkVehicle.ClientId + 「);」)' 那麼你的JS會像 '函數toggleVehicle(chkBoxId){}' – jasonscript
@jasonscript one more事情是支柱v/s attr。已經更新了答案。直到你的評論我都注意到內聯'onclick'上的用法。 :) – PSL
非常感謝。如果我手動點擊複選框,函數就會被執行。但是當複選框的值從後面的c#代碼中設置時,那麼這個函數沒有任何作用。可以實現嗎? – sjd