Hinweis: Der Code hat den Test im eigentlichen Projekt bestanden. Ich habe einige unwichtige Teile weggelassen. Sie können sich auf die farblich markierten Teile konzentrieren.
Vorspiel:
Frage: Warum machen Sie das? ?
Antwort: Im Projekt gibt es eine Funktion zum Speichern des eingegebenen Textfeldtextes in der Datenbank. „Beim Betrachten“ holt sich die entsprechenden Daten aus der Datenbank und zeigt sie im Textfeld an. Während der Entwicklung habe ich festgestellt, dass das Newline-Zeichen mit val() oder text() von jquery erhalten wird, ohne es zu verarbeiten. Natürlich gibt es kein Newline-Zeichen, wenn es herausgenommen und angezeigt wird. Als Ergebnis habe ich den folgenden Artikel geschrieben ... Er ist etwas ausführlich!
Kopieren Sie den Codecode wie folgt:
<%@ page contentType="text/html;charset=UTF-8" %>
<script type="text/javascript">
// Verarbeitung des Zeilenumbruchs im Textfeld
// Verarbeiten Sie während der Initialisierung die vom Hintergrund zurückgegebenen Daten und ersetzen Sie @@@@ durch Zeilenumbruchzeichen /n/r
$(document).ready(function(){
var content = 'Aus dem Hintergrund erhaltener Wert';
if(content !='' ){
//Globaler Ersatz
content = content.replace(/@@@@/g,'/n/r');
$("#content").attr("value",content);
}
});
// Ersetzen Sie beim Senden und Speichern das Zeilenumbruchzeichen /n/r durch @@@@.
Funktion doSubmit() {
var content = $("#content").val().replace(//n/g,"@@@@");
if(content == null || content==""){
Alert("Bitte füllen Sie die Bemerkungen aus!");
zurückkehren;
}
$("#updateForm").attr("method","get");
$("#updateForm").attr("action", url);
$("#updateForm").submit();
}
</script>
<div>
<div>
<div>
<div><p><font face="Normale chinesische Schrift" size="10">Interviewplan</font></p>
</div>
<div>
<div> Plan<br><hr></div>
<div>
Bemerkungen:
<div>
<textarea id="content" rows="15" cols="50"></textarea>
</div>
</div>
</div>
<div>
<a id="submit_btn" onclick="doSubmit();">Speichern</a>
</div>
<form id="updateForm" method="get">
</form>
</div>
</div>
</div>