J'ai une div dont l'attribut contentEditable est défini.
Cela me permet d'avoir une zone de texte éditable de forme libre, sans avoir besoin de champs de saisie de formulaire : http://jsfiddle.net/M8wx9/8/
Cependant, lorsque je crée quelques nouvelles lignes et que je clique sur le bouton "Enregistrer", je saisis le contenu à l'aide de la fonction .text()
qui supprime le saut de ligne que je viens de saisir. J'ai besoin de conserver les caractères de retour à la ligne si possible et de stocker le contenu en texte brut dans la base de données.
Je pourrais stocker le code HTML directement dans la base de données en utilisant .html()
au lieu de .text()
mais je n'aime pas cette idée car je pourrais avoir besoin d'extraire ces données en texte brut à l'avenir. De plus, dans Firefox, le fait d'appuyer sur Entrée coupe les nouvelles lignes avec <br>
Chrome et Safari ne fonctionnent pas avec <div>...</div>
et Internet Explorer et Opera utilisent des paragraphes <p>...</p>
pour les nouvelles lignes, il ne semble donc pas très facile d'analyser le html.
Comment puis-je préserver ces sauts de ligne et stocker le contenu en tant que texte brut dans la base de données (de la même manière qu'une zone de texte) ?
Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées, ns