我可以将viewbag值传递给mvc2中的jQuery

Mr *_*r A 2 asp.net-mvc jquery asp.net-mvc-2

我需要使用viewbag将值传递给视图中的jQuery.我想要实现的是传递null或一些值,然后jQuery应隐藏或显示div,具体取决于传递的值,例如下面的内容:

viewbag.testNumber = null;
 $('#showdiv').hide();
  $('viewbag.testNumber').value == someinteger{

    $("#showdiv").show();
    else
    $("#showdiv").hide();
});
   <div id="showdiv"> Some Calculation </div>
Run Code Online (Sandbox Code Playgroud)

此外,如果值为null,我想在视图中禁用viewbag,因为它给出了null错误

Rez*_*eza 5

如果您正在使用MVC3(不能与2一起使用),您可以轻松地使用ViewBag,但请记住两个容易忘记且可能导致头痛的问题:

  1. 切勿在@ ViewBag.myVariable末尾添加分号
  2. 如果您在@ ViewBag.myVariable之前和之后传递字符串put.例如:

这是正确的:

$(function () {
    var path = "@ViewBag.helpPath"
    path = "@Url.Content("~/route/action/")" + path;
    $('#help-content').load(path);

});
Run Code Online (Sandbox Code Playgroud)

但是,如果您使用:

$(function () {
    var path = @ViewBag.helpPath
    path = "@Url.Content("~/route/action/")" + path;
    $('#help-content').load(path);

});
Run Code Online (Sandbox Code Playgroud)

MVC将其更改为:

$(function () {
    var path = c:\\doc\\path
    path = "@Url.Content("~/route/action/")" + path;
    $('#help-content').load(path);

});
Run Code Online (Sandbox Code Playgroud)

哪个JavaScript无法解析它,结果会是一些丑陋的bug.只是我做了一件事,浪费了我的时间来分享它.