【问题标题】:kendo mvvm bind text with newline to textareakendo mvvm 将带有换行符的文本绑定到 textarea
【发布时间】:2016-04-24 01:21:03
【问题描述】:

我正在使用 Kendo UI MVVM 并尝试将一些文本与来自服务器的换行符(\n,而不是 <br/>)绑定到文本区域(但特定控件不是这里的重点),但它没有没用。

HTML

<div id="model">

<textarea data-ng-bind="value:myText"></textarea>

</div>
<script>

$(function () {

    var model = kendo.observable({
        myText: '@ViewData.Eval("textWithNewLines")'
    });

    kendo.bind($("#model"),model);
});
</script>

服务器端代码

 // GET: G4B/Home
    public ActionResult Index()
    {

        return View("index", new { textWithNewLines = "text\nWith\nNew\nLines" });
    }

这里发生的事情非常明显:@ViewData.textWithNewLines 在带有 newLine 的页面中呈现,并且 javascript 被破坏了。 ScreenShot of the error shown in Chrome

但是我该怎么做呢?

【问题讨论】:

标签: javascript asp.net-mvc mvvm kendo-ui


【解决方案1】:

解决了。 问题源于从将“\n”编码为新行的服务器获取数据。

解决方案是这样包装我的文本:

<script>

$(function () {

    var oUtils = new G4BUtils();

    var model = new kendo.observable({
        myText: @Html.Raw(Json.Encode(ViewData.Eval("textWithNewLines")))
    });

    kendo.bind($("#model"), model);

});
</script>

【讨论】:

    猜你喜欢
    • 2013-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-03
    • 1970-01-01
    • 2014-04-06
    • 2018-06-11
    • 1970-01-01
    相关资源
    最近更新 更多