1

フォーム内のすべてのチェックボックスをクリアしてから、1 つの関数内でフォームを送信しようとしていますが、チェックボックスがオフになる前にフォームが送信されるようです。コールバックでこれを行う方法はありますか、それとも完全に別の方法がありますか?

関数は次のようになります。

function clear_checkboxes() {
    $(".addtomailer").attr('checked', false);
    $('#addresses').submit();
    return false;
}

この関数はフォーム ボタンで呼び出され、.addtomailer はすべてのチェックボックスのクラスで、#addresses はフォーム ID です。

(これを行う方法を尋ねる質問がたくさん見つかりましたが、すべての質問者は実際にアイテムがいつロードされるかをテストしようとしていたため、質問に対する実際の回答はありませんでした)

更新: jQuery の最新バージョンを使用します。

4

2 に答える 2

0

.prop代わりに使ってみてください.attr

$(".addtomailer").prop('checked', false);

一般に、「attribute」がブール値の場合は「prop」を使用します。(チェック、無効、選択など)。「attr」は要素の状態を適切に更新しません。

http://api.jquery.com/prop/

于 2012-09-08T22:26:30.243 に答える
0

checkedすべてのチェックボックスから属性を削除し、値を false に設定する必要があります。

    $(".addtomailer").removeAttr('checked').val(false);
于 2012-09-08T22:30:00.273 に答える