0

我想从客户端代码中访问 ViewBag 数据。这是我在控制器中尝试过的:

ViewBag.Tasks = new JavaScriptSerializer().Serialize(tasks);

在我看来,我会将它放在一个隐藏字段中,以便它在客户端可用:

<input type="hidden" name="diagramData" data-nodes="@ViewBag.Tasks"  />

然后在我的 Javascript 文件中搜索与所选节点相关的信息:

alert($("#diagramData").data("nodes"));  //?????

警报始终显示“未定义”。为什么是这样?

4

1 回答 1

1

那是检索元素的错误 jQuery 选择器。尝试:

$('input[name="diagramData"]').data("nodes")

您在 HTML 中设置了name属性,但您尝试通过id(因为#)选择它。选择 by 需要属性等于选择器name

或者,当然,只需添加一个id参数作为“diagramData”并使用您的原始选择器。

参考:

于 2013-05-09T03:51:59.653 回答