Nota: O código passou no teste no projeto real. Omiti algumas partes sem importância. Você pode se concentrar nas partes marcadas por cores.
Preliminares:
Pergunta: Por que você faz isso? ?
Resposta: Existe uma função no projeto para salvar o texto do campo de texto inserido no banco de dados. 'Ao visualizar' obtém os dados correspondentes do banco de dados e os exibe no campo de texto. Durante o desenvolvimento, descobri que o caractere de nova linha é obtido usando val() ou text() do jquery sem processá-lo. Naturalmente, não há caractere de nova linha quando ele é retirado e exibido! Como resultado, escrevi o seguinte artigo... É um pouco prolixo!
Copie o código do código da seguinte forma:
<%@ page contentType="text/html;charset=UTF-8" %>
<script type="texto/javascript">
// Processamento de quebra de linha do campo de texto
// Durante a inicialização, processe os dados retornados do plano de fundo e substitua @@@@ por caracteres de nova linha /n/r
$(documento).ready(function(){
var content = 'Valor obtido do background';
if(conteúdo !='' ){
//Substituição global
conteúdo = content.replace(/@@@@/g,'/n/r');
$("#conteúdo").attr("valor",conteúdo);
}
});
// Substitua o caractere de nova linha /n/r por @@@@ ao enviar e salvar
função doSubmit() {
var conteúdo = $("#content").val().replace(//n/g,"@@@@");
if(conteúdo == nulo || conteúdo==""){
alert("Por favor preencha os comentários!");
retornar;
}
$("#updateForm").attr("método","get");
$("#updateForm").attr("ação", url);
$("#updateForm").submit();
}
</script>
<div>
<div>
<div>
<div><p><font face="Roteiro regular chinês" size="10">Plano de entrevista</font></p>
</div>
<div>
<div> Plano<br><hr></div>
<div>
Observações:
<div>
<textarea id="content" rows="15" cols="50"></textarea>
</div>
</div>
</div>
<div>
<a id="submit_btn" onclick="doSubmit();">Salvar</a>
</div>
<form id="updateForm" método="get">
</form>
</div>
</div>
</div>