我正在使用带有Asp.NET和visual studio的knockout.js(2012年但我在2010年和2013年遇到了同样的问题)。我的代码看起来像这样:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Test.ascx.cs" Inherits="Solution.ascx.Test" %>
<div>
<span data-bind="value: '<%= String.Empty%>'"></span>
</div>
每次粘贴此代码或按ctrl + k,ctrl + d(格式文件),我会在代码渲染块之后得到那些奇怪的空格。 (在以下代码段中替换为XXXX以获得可见性)
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Test.ascx.cs" Inherits="Solution.ascx.Test" %>
<div>
<span data-bind="value: '<%= String.Empty%>XXXX'"></span>
</div>
仅在使用“data-bind”标记时才会出现问题。
我尝试在客户端选项&gt;中禁用“缩进内容”文本编辑器&gt; HTML&gt;格式化&gt;标签特定选项&gt; HTML标记&gt;没有运气。有人有解决方案吗?它不仅非常烦人,而且还可以解析这些空间并抛出异常。
答案 0 :(得分:1)
文本编辑器的格式化不是问题,这是-bind属性的问题。无论出于何种原因,VS都不喜欢这样。自从阅读这个问题以来我一直在浏览互联网,但找不到任何合理的理由。
我确实找到了,这可能是你最好的方法,有人使用MVC遇到了确切的问题:using @data-bind in ASP.NET MVC htmlAttributes throws exception
只需使用JQuery即可将data_bind动态更改为数据绑定(如帖子中所述),您应该很高兴。