0

WordPressサイトにjQuery検証エンジンとprettyCheckboxesjQueryプラグインを使用しています。

最初に、JVEはスタイルを設定するプラグイン(jQuery selectBox)と互換性を統合し、私は代替プラグイン、prettyCheckboxes<select>で同じことをしようとしてきました。<input type="checkbox">

prettySelect : trueプラグインの初期化内にオプションとして追加する必要があるため、プラグインにを追加しました。これは、以下の行、、、および変更されたプラグイン内prettyCheckboxes : trueの要点で確認できます。1643304956931944

これに加えて、IDが繰り返されないように、またクラスが本来あるべき場所に追加されないようにするために、ID/クラスのジゲリーを行う必要があります。また、非表示に「checked」属性を追加して<input type="checkbox">、JVEプラグインが変更されたことを認識できるようにする必要がありました。

エラーメッセージが表示されるまでしか機能しませんが、間違っています。基本的に、チェックボックスをクリックすると、表示するメッセージが登録され、チェックを外すとメッセージが消えます。その逆です。ただし、最初にクリックしたものをクリックしてから他のチェックボックスをクリックすると、最初にクリックした順序でクリックしない限り、まったく機能しません。本当に変です。

だから私の質問は、どうすればprettyCheckboxesをJVEで正しく動作させることができますか?明らかに私はそれを間違って変更しましたが、それを意図したとおりに機能させる場所や方法がわかりません。

変更されたjQuery検証エンジン、prettyCheckboxes、カスタムHTML、およびスクリプト:https
://gist.github.com/0349d8c92039fc8c6009 (申し訳ありませんが、2つ以上のハイパーリンクを投稿することはできません!)

4

1 に答える 1

0

何らかの理由で、私のコードの一部がプラグインに干渉していました:

$('.custom-tick').click(function() {
    $(this).each(function() {
        if ($(this).hasClass('checked')) {
            $(this).siblings('input[type="checkbox"]')
                .attr('checked', true);
        } else {
            $(this).siblings('input[type="checkbox"]')
                .attr('checked', false);
        }
    });
});

私はそれを削除し、チェックボックスは検証を正しく有効にしています。

于 2012-10-17T02:52:07.630 に答える