jQuery の統一チェックボックスがチェックされない (チェック解除されない) 質問する

jQuery の統一チェックボックスがチェックされない (チェック解除されない) 質問する

使っていますjQuery ユニフォーム入力/選択などのスタイルを設定します。ただし、チェックボックスが機能しなくなりました。Ajaxappending呼び出しからデータを送信しています。読み込まれたら、$.uniform.update("input:checkbox")新しい HTML を更新するために使用します。入力をチェック (またはチェック解除) しようとすると、1 回しか機能しません。もう一度チェック (またはチェック解除) したい場合、まったく変化しません。

私は変更を試みた統一されたJavascriptすべてのアクション (つまり、、clickなどfocus)blur.live関数 (つまり、.live("click",) の下に配置されるようにします。これでは何も動作しなくなります。

アップデート:

Uniform JS を全体的に読んでみたところ、問題が見つかりました。

if(!$(elem).attr("checked")){
    //box was just unchecked, uncheck span
    spanTag.removeClass(options.checkedClass);
}else{
    //box was just checked, check span.
    spanTag.addClass(options.checkedClass);
}

構文.attr("checked")が失敗します。常に false を返します。なぜでしょうか? わかりません。これに加えて、属性inputを削除したりchecked、属性を設定したりするために元の構文を更新しませんchecked

公式サイトをざっと見たところ、チェックボックスの入力が更新されないことがわかりました。私だけではないようです xP

グーグルで少し調べたところ、チェックボックスがチェックされているかどうかを確認するさまざまな方法を見つけましたが、次の方法は失敗します。

if ($(elem).attr("checked")) // The original.
if ($(elem).attr("checked") == true)
if ($(elem).is(":checked"))
if ($(elem).checked)
// and:
var check = $(elem).match(/checked=/);
if (check == null)

アドバイスのお言葉、本当に嬉しいです〜:3

ベストアンサー1

シンプルな解決策

それの訳はUniformJsフォーム上の値を動的に変更する必要がある場合は、uniform 要素の変更を更新する必要があります。

$('#checkbox').prop('checked',true);
$.uniform.update();

編集

#checkboxのみを更新したい場合は、次の手順に従ってください。

$('#checkbox').prop('checked',true);
$.uniform.update('#checkbox');

おすすめ記事