问题:MVC4中支持对ViewBag、ViewDate等的动态编译,但是在js中对它的支持就是有问题。虽然是可以动态编译,但是动态编译之后,断点无法获取。

$.getJSON("/api/Articles/" + @ViewData[“id”], function (data) {
//$("#label1").innerText = data.Title;
//var html = "<ul>";
$(data).each(function (i, item) {
$("#label1").html(item.Title);
$("#label2").html(item.Author);
$("#label3").html(item.Time.substring(,));
//$("#label4").html(item.);
$("#label5").html(item.Class);
$("#label6").html(item.Content);
});
});

解决方法:不通过在js动态编译的方式传递参数,将经过动态编译后的变量放进一个标签里,再从标签获取它的值

<input type="hidden" value="@ViewData["ID"]" id="txtID" name="txtID" />
var id = $("#txtID").val();
$.getJSON("/api/Articles/" + id, function (data) {
//$("#label1").innerText = data.Title;
//var html = "<ul>";
$(data).each(function (i, item) {
$("#label1").html(item.Title);
$("#label2").html(item.Author);
$("#label3").html(item.Time.substring(,));
//$("#label4").html(item.);
$("#label5").html(item.Class);
$("#label6").html(item.Content);
});
});
04-13 12:52