Gra*_*ell 2 javascript asp.net-mvc
我想在javascript中将数据添加到列表框中,但是字符串构建语法让我感到难过:
var yourobject = '<%=Model.Inserts['+ i + ']%>';
导致错误:"字符文字中的字符过多"
所有代码:
var mlb = cm.createListBox('mylistbox', {
title: 'My list box',
onselect: function(v) {
tinyMCE.activeEditor.windowManager.alert('Value selected:' + v);
}
});
for (var i = 0; i < '<%=Model.Inserts.Count() %>'; i++) {
var yourobject = '<%=Model.Inserts['+ i + ']%>';
mlb.add(yourobject, i);
}
Run Code Online (Sandbox Code Playgroud)
Doo*_*ght 11
我知道这是一个老问题,但答案已经过时,因为现在可能.
这可以在razor语法中使用@:行的开头在javascript中运行(从c#中转义).
我Model.xValues是List<String>从控制器传来的.并且yValues是List<int>
这是一个如何在javascript函数中循环模型数据的快速示例.
<script type="text/javascript">
function drawChart() {
// Create the data table.
var data = new google.visualization.DataTable();
data.addColumn('string', '@Model.LabelName');
data.addColumn('number', '@Model.ValueName');
@for(int i = 0; i < Model.xValues.Count; i ++)
{
@: data.addRow(['@Model.xValues.ElementAt(i)', @Model.yValues.ElementAt(i)]);
}
... etc
</script>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10052 次 |
| 最近记录: |