.js代码中的RazorEngine评估问题
RazorEngine evaluation issue with .js code
我正在使用RazorEngine评估一些JavaScript代码,但遇到了编译失败的问题。这里有一个例子:
var someBarChart = d3.select("@Model.DivId").append("svg")
.attr("width", barChartWidth + barChartMargin.left + barChartMargin.right)
.attr("height", barChartHeight + barChartMargin.top + barChartMargin.bottom)
.append("g")
.attr("transform", "translate(" + barChartMargin.left + "," + barChartMargin.top + ")");
这里的罪魁祸首是@Model.DivId
周围的"标记。有人能给我指一种方法来评价那个特定的例子吗?
我期待这个结果:
var someBarChart = d3.select("someDivId").append("svg")
.attr("width", barChartWidth + barChartMargin.left + barChartMargin.right)
.attr("height", barChartHeight + barChartMargin.top + barChartMargin.bottom)
.append("g")
.attr("transform", "translate(" + barChartMargin.left + "," + barChartMargin.top + ")");
此外,当我试图评估这样的东西时,它在我身上失败了:
@Model.BarChartName.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + barChartHeight + ")")
.call(xAxis);
在这种情况下,我期待着这样的结果:
someBarChart.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + barChartHeight + ")")
.call(xAxis);
就像我提到的,我使用RazorEngine,它默认配置为解码Html。我还尝试了一个使用var someBarChart = d3.select("@Raw(Model.Div)").append("svg")
的案例,但也未能进行评估。
感谢所有的想法。谢谢你,
当您想在javascript:中将剃刀值用作字符串时,请使用单引号,而不是双引号
d3.select('@Model.DivId')
@Robert McKee
事实上,我能够使用以下语法来解决它:
var @Model.DivName = d3.select("@(Model.DivId)").append("svg")
这是正确的评估。谢谢你的建议。
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 将PHP变量传递给jQuery时遇到问题
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- 参数变量出现ngTable指令问题
- 剑道网格jQuery动画()问题
- 我的jQuery插件参数没有正确启动,遇到了问题
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- TableExport jquery插件:文件名和扩展名问题
- JavaScript Pub/Sub属性访问问题
- JavaScript异步问题
- 使用正则表达式评估电子邮件地址时出现性能问题
- &&评估问题
- 如何修复由于在java脚本中使用eval()而在强化扫描中的动态代码评估问题
- Qt评估JavaScript问题
- AngularJS在评估正则表达式ng模式时出现问题
- 使用javascript中的名称空间评估xpath的问题
- .js代码中的RazorEngine评估问题
- Javascript闭包和执行上下文-评估代码的问题
- 在javascript中评估条件时出现问题
- 如果 Javascript 由服务器上的 Java 评估,则会出现安全问题