我刚刚开始使用 ASP.NET MVC 项目,我已经掌握了基础知识,但我最近遇到了一个问题,我无法将字符串作为 id 从视图传递。
到目前为止,我一直在将 id 传递给这样的 javascript 函数:
<script>app.init( <%: ViewContext.RouteData.Values["id"].ToString() %>)</script>
这将调用以下 javascript 函数:
var app = {};
(function (app) {
var _id;
app.init = function (id) {
_id = id;
}
app.id = function () {
return _id;
}
})(app);
我这样做是因为我需要使用 id 在 javascript 中执行诸如提交和 ajax 调用之类的操作(我更喜欢使用 javascript)。
到目前为止,这适用于 int 值,但是当我尝试传递一个字符串时它失败了。例如,如果我尝试访问此 url localhost:65097/Device/Edit/D2C02 它会显示以下错误:
SCRIPT5009: 'D2C02' is undefined
当我检查生成的 html 代码时,对函数的调用如下所示:
<script>app.init(D2C02)</script>
id 不应该像字符串一样作为 'D2C02' 传递,而不仅仅是像变量一样的 D2C02 传递吗?因为这就是我所理解的浏览器认为 id D2C02 代表的内容。如何确保将 id 值作为字符串传递给 javascript 函数?