2013-04-23 6 views
0

Quand j'essaie de faire ces textareas dynamiquement transformé en champs de CEditor je reçois l'erreur: TypeError: b est indéfinidynamique faisant textarea ckeditor

mon code:

var input = $("<textarea>").addClass("textAreaClassTest"); 
    //input.setAttribute("id", "como"); 
    //input.setIdAttribute("id", "como"); 
    //input.ID = 'como'; 
    CKEDITOR.replace('como'); 
    item.append(input); 
    //CKEDITOR.replace('como'); 

    return item; 

je ne peux pas sembler donner textarea an id - any id's :)

Répondre

0

Je suppose que vous utilisez jQuery et ne travaillant qu'avec 1 ou plusieurs zones de texte à la fois. Vous pouvez donc obtenir les zones de texte et leur attribuer des identifiants et les utiliser comme indiqué ci-dessous.

//select all text areas 
var input = $("textarea"); 
var list = new Array(); 
var count = 0; 

input.each(function() { 
    count++; 
    $this = $(this); 
    $this.attr("id", "como" + count); 
    console.log('id is "' + $this.attr("id") + '" and text is "' + $this.text() + '"'); 
    CKEDITOR.replace($this.attr("id")); 
    list.push($this.attr("id")); 
}); 
//return the list of replaced text area ids 
return list; 
+0

Vous n'avez pas à leur attribuer d'identifiants. Vous pouvez passer des éléments à la fonction 'CKEDITOR.replace'. – Reinmar

+0

Merci Reinmar, n'aura pas besoin des identifiants juste pour faire le CKEDITOR.replace. De la question il semblait que l'utilisateur voulait leur attribuer des identifiants et retourner les objets de textarea, peut-être que l'utilisateur avait autre chose en tête. –

+0

J'ai une fenêtre où l'utilisateur peut placer plusieurs zones de texte - quand ces zones de texte sont placées ou focalisées je voudrais les transformer en champs de ckeditor - quand elles sont floues je voudrais les changer en textareas normales - ou peut-être juste cacher le menu d'édition ckeditor fournit – SimontheS

Questions connexes