1 votes

Problème avec onchange et jQuery val() et text()

J'ai une zone de texte comme celle-ci dans laquelle j'écris actuellement. je veux que le contenu de la zone de texte apparaisse dans une fenêtre lors d'un changement. J'ai utilisé

<textarea id="content" onchange="perview();"></textarea>

function perview() {
var code = $("textarea#content").val();
$('#code-preview').html(code);
}   

Je pense que tout va bien

<pre id="code-preview"></pre> 

Mais lorsque l'on utilise un surligneur sur le pré, cela ne fonctionne pas. comme ça

<pre id="code-preview" class="brush: php;"></pre>

l'outil de mise en valeur de la syntaxe (SyntaxHighlighter) version 2.1.364 (15 octobre 2009)

1voto

Reigel Points 34008

Avez-vous essayé ?

function perview() {
   var code = $("textarea#content").val();
    $('#code-preview').html(code);
    SyntaxHighlighter.all() // <--- calling this again...
} 

c'est-à-dire si nous utilisons les mêmes surélevé . si cela fonctionne, essayez de ne pas mettre en ligne les événements... ;) merci...

0voto

Jubair Points 1182

Au lieu d'utiliser onchange="", essayez d'utiliser

$(document).ready(function(){
     $('textarea#content').change(function(){
          var code = $(this).val();
          $('#code-preview').html(code);
     });
});

vous pouvez également essayer d'autres méthodes telles que .blur() au lieu de .change().

Enlevez aussi le ; de votre classe, qui devrait se lire :

<pre id="code-preview" class="brush:php"></pre>

J'espère que cela vous a été utile.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X