【发布时间】:2015-04-21 18:37:54
【问题描述】:
我正在尝试按如下方式绑定数据属性:
@Html.Label("test", new { data_test = "{{vm.test}}" })
渲染后,我看到的是:
<label data-test for="test">test</label>
如何转义花括号,以便在页面上呈现它们?我尝试过的一些事情是:
- {{{{vm.test}}}}
- \\{\\{vm.test\\}\\}
【问题讨论】:
-
所以你想要
<label data-test="{{vm.test}}" for="test">test</label>的输出? -
或者您是否希望出现
vm.test的值,例如如果 vm.test 的值是“blah”,那么<label data-test="blah" for="test">test</label>? -
我测试了第一个场景,它工作正常,你可以在检查器中看到你得到
data-test="{{vm.test}}":dotnetfiddle.net/hWYlqITested using Chrome -
是的,这就是我要找的 -
data-test="{{vm.test}}。不知道为什么我没有得到相同的输出。我唯一能想到的是我不知道的 project/web.config 设置。感谢您的观看。 -
有时浏览器会弄乱你的 DOM。您在浏览器检查器中看到的是解析 HTML 的结果,它会修复诸如不匹配的引号或标签之类的东西。使用浏览器中的网络选项卡查看实际响应以在解析之前查看原始 HTML,检查数据属性是否存在。如果您有任何杂散字符,它们可能会导致语法问题,并且当浏览器尽力修复语法时,您的属性值会丢失。
标签: asp.net-mvc angularjs razor