2013-10-25 30 views
0

我想将一个类mceBasicEditor添加到文本区域id="abcd",以便在textarea标记中存在该类时加载tinymce工具栏。但是当单击复选框时,我收到警报,但在检查文本区域时,看到类mceBasicEditor尚未添加,也没有出现tinymce工具栏。addClass对特定文本区域的id不起作用

这是复选框代码:

<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'); 
    } 
}); 
+0

谢谢小提琴的作品和课程,但由于某种原因,它不适用于我的网页。你有什么想法可能是什么问题? – user2441391

+0

控制台中的任何错误? – tymeJV

+0

什么也没做,一切正常。我似乎无法添加课程。 – user2441391

回答

0

很可能,你试试这个(添加/删除class

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

Example Here.

更新: 此外,toggleClass将工作

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

Example Here.

0

相反的:

$(this).attr('checked') 

用途:

$(this).prop('checked') 

从jQuery的.prop()文件:

属性和特性之间的差异可以在特定情况下非常重要。 在jQuery 1.6之前,.attr()方法在检索某些属性时有时会考虑属性值,这可能会导致行为不一致。 从jQuery 1.6开始,.prop()方法提供了显式检索属性值的方法,而.attr()检索属性。

+1

我使用过,但它似乎没有真正改变任何东西。一切工作方式与使用'attr'时一样。 – user2441391