You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用jQuery结合Model在textarea中显示含\n\r的字符串?

解决方法

问题核心是@Model.Content中的换行符直接输出到JavaScript字符串后,违反了JS语法规则——JS不允许字符串字面量包含未转义的换行。需要将Model内容转译为符合JS规范的格式,具体方案如下:

方案1:ASP.NET MVC环境

使用Json.Encode自动转义换行、引号等特殊字符,再通过Html.Raw避免HTML编码,确保JS能正确解析:

var content = @Html.Raw(Json.Encode(Model.Content));
$("#ListContainer #@Html.IdFor(model => model.Content)").val(content);

方案2:ASP.NET Core环境

推荐使用System.Text.Json.JsonSerializer完成序列化转义:

var content = @Html.Raw(System.Text.Json.JsonSerializer.Serialize(Model.Content));
$("#ListContainer #@Html.IdFor(model => model.Content)").val(content);

以上两种方式都会把原字符串中的\n\r转译为JS可识别的转义序列,同时处理其他特殊字符,生成合法的JS字符串字面量,彻底解决语法报错问题。

内容的提问来源于stack exchange,提问作者ar.gorgin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 14:42:05