0

Kendo UI Panel Barに分割されたフォームがあります。最初のパネルには、テキストが入力されたときに、現在表示されておらず、その下の折りたたまれたパネル内にあるチェックボックスをチェックするフィールドがあります。

私の問題は、チェックボックスがチェックされないことです。チェックボックスが表示されていないときに無効になる方法についての投稿をいくつか読みました。これに対する回避策はありますか?

    function Validate(uid) {
    if ($("#SomeNumber_" + uid).val().length > 0) 
    {
        $("#MyCheckBox").attr('checked', true);  //This checkbox is display:none at the time this is set
        //Also tried these, but they didn't work:
        //$("#MyCheckBox").click();
        //var myCheckBox= document.getElementById("MyCheckBox");
        //myCheckBox.checked = true;
    }
}
4

2 に答える 2

2

ボタンを介して動的に変更することにより、チェックボックスの表示なしをテストしました。表示なし設定で動作します。

http://jsfiddle.net/jmsessink/hcWf8/1/

以下は、チェックボックスの属性を「チェック済み」に設定します-

これ -

$('#MyCheckBox').attr('checked', true)

としても

$('#MyCheckBox').attr('checked', 'checked')

としても

document.getElementById('MyCheckBox').checked = true;

としても

document.getElementById('MyCheckBox').checked = 'checked';

*編集 - これらの 4 つのメソッドを表示するように jsfiddle バージョンを更新しました

于 2012-12-06T22:07:15.617 に答える
2

試す$("#MyCheckBox").prop('checked', true);

同様のユースケースがあり、非表示のチェックボックスをオンにできることを証明できます。

attr を使用する正しい方法は $("#MyCheckBox").attr('checked', 'checked');

于 2012-12-06T21:53:37.967 に答える