0

そのクラスがテキストエリアタグに存在するときにtinymceツールバーがロードされるように、クラスmceBasicEditorをテキストエリアに追加したいと考えています。id="abcd"しかし、チェックボックスをクリックすると警告が表示されますが、テキスト領域を確認すると、クラスmceBasicEditorが追加されておらず、tinymce ツールバーも表示されていません。

これはチェックボックスのコードです:

<form><input type="checkbox" id="mceCheck" name="mceCheck" value="1" >mce Toggle</form>

テキストエリアは次のとおりです。

<p id="description" style=""><label style=""  class="leftLabel" >Event Description</label><textarea name="event_description" id="abcd" style="" rows="25" cols="50" class="contact  mceNoEditor "></textarea></p>

クラスを追加するための Jqueru:

$('#mceCheck').click(function(){
    if($(this).attr('checked')){
        alert(1);
        $('#abcd').addClass('mceBasicEditor');
    }
    else
    {
        alert(0);
        $('#abcd').removeClass('mceBasicEditor');
    }
});
4

2 に答える 2

0

代わりにこれを試すことができます(追加/削除するためclass

$(function(){
    $('#mceCheck').change(function(){
        if($(this).is(':checked')){
            $('#abcd').addClass('mceBasicEditor');
        }
        else
        {
            $('#abcd').removeClass('mceBasicEditor');
        }
    });
});

例はこちら。

更新: また、toggleClass動作します

$(function(){
    $('#mceCheck').change(function(){
        $('#abcd').toggleClass('mceBasicEditor');
    });
});

例はこちら。

于 2013-10-25T17:20:36.430 に答える
0

それ以外の:

$(this).attr('checked')

使用する:

$(this).prop('checked')

jQueryの.prop()ドキュメントから:

特定の状況では、属性とプロパティの違いが重要になる場合があります。jQuery 1.6 より前では、.attr()一部の属性を取得するときにメソッドがプロパティ値を考慮することがあり、一貫性のない動作を引き起こす可能性がありました。jQuery 1.6 の時点で.prop()メソッドはプロパティ値を明示的に取得する方法を提供し、.attr()属性を取得します。

于 2013-10-25T17:12:03.113 に答える