Ne pas autoriser de nouvelles lignes dans la zone de texte

En utilisant jQuery comment ne pas permettre l'insertion de nouvelles lignes (en appuyant sur enter ou copier dans le texte) – En semi-pseudo code …

$('textarea').keydown(function(){ $(this).remove_new_lines(); }); 

Merci!

MODIFIER:

Serait-ce aussi brut que le suivant ou y a-t-il une meilleure façon?

 function removeNL(s){ return s.replace(/[\n\r\t]/g,); } $('textarea').keydown(function(){ $(this).val(removeNL($(this).val)); }); 

Il existe deux méthodes pour ce faire: vérifiez chaque caractère tel qu'il est entré et renvoyez false si vous ne voulez pas qu'il apparaisse ou, à chaque changement / clé, vous pouvez vérifier l'intégralité du contenu. Alors que le premier est plus performant, il ne fonctionnera pas dans les situations où l'utilisateur colmet le contenu en incluant les caractères indésirables. Pour cette raison, je recommande la dernière approche, quelque chose comme ça (ce qui interdit tous les espaces verticaux):

 $('textarea').on('keyup', function(){ $(this).val($(this).val().replace(/[\r\n\v]+/g, '')); }); 

Vous pouvez vérifier KeyCode, s'il est égal à 13, renvoyez simplement false

 $ ('# TEXTAREA'). Keypress (function (e) {
    Si (e.keyCode == 13) renvoie faux
 })
 $('textarea').keydown(function(e){ var s = $('textarea').val(); while (s.indexOf("\n") > -1) s = s.replace("\n",""); $('textarea').val(s); });