Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/07/2011, 15:16
gmurop
 
Fecha de Ingreso: marzo-2011
Ubicación: Veracruz
Mensajes: 92
Antigüedad: 13 años, 9 meses
Puntos: 3
Función change() en editor de texto asp.net

Buen día a todos, tengo una duda:

por lo que ví en la documentación de jquery la función change() solo funciona con inputs y textareas; yo tengo un editor de texto, como éste en el cual estoy escribiendo ahorita, pero quiero que mientras escriba me vaya poniendo en un label cuantas palabras llevo, ya tengo la función pero no lo puedo lograr que lo haga en tiempo real.

Éste es el codigo del editor y donde está el label (está en asp.net):

Código:
<FCKeditorV2:FCKeditor ID="txtIntro" Width="100%" EnableViewState="true" runat="server"
                            BasePath="fckeditor/">
                        </FCKeditorV2:FCKeditor>
                        <div class="lblPalabrasContadas">
                            Palabras contados:0
                        </div>
Y ésto es lo que quiero hacer en el jquery:

Código:
$("#txtIntro").change(function () {

                $("#lblIntro").html($(oEditor.EditorDocument.body).html().replace(/<br>|<\/p>/g, ' '));
                var texto_plano = $("#lblIntro").text().replace(/\s/g, ' ').split(' ');
                var palabras = 0;
                for (var i = 0; i < texto_plano.length; i++) {
                    if (texto_plano[i].length > 0)
                        palabras++;
                }

                $(".lblPalabrasContadas").text('Palabras contadas:' + palabras);

            });
Por si les sirve, de la siguiente manera puedo obtener el valor de txtIntro:

Código:
$("#lblIntro").html(oEditor.GetXHTML(true));
Les agradecería mucho si me ayudan con ésto.

Saludos