有没有办法将HashTable
加载的键/值传递给页面视图,然后我可以通过 javascript/Jquery 使用它?
示例:我有 HashTable
key = Car Model (206 XT), Value = "PEUGEOT", etc...............
因此,在视图中,我有一个包含所有车型的组合,并且在附近,我有一个文本框,其中自动填充了从 javascript 获取的制造商
有没有办法这样做?
(我真的是 MVC 3 中的菜鸟 :()
有没有办法将HashTable
加载的键/值传递给页面视图,然后我可以通过 javascript/Jquery 使用它?
示例:我有 HashTable
key = Car Model (206 XT), Value = "PEUGEOT", etc...............
因此,在视图中,我有一个包含所有车型的组合,并且在附近,我有一个文本框,其中自动填充了从 javascript 获取的制造商
有没有办法这样做?
(我真的是 MVC 3 中的菜鸟 :()
有不同的方法来解决这个问题:
如果您不想在不重新加载的情况下动态获取此列表,则可以使用 json 请求(示例)。
Javascript:
$.ajax({
type: "POST",
url: "/controler/action",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: jsonData,
success: function (result){
for(var i=0; i<result.length; i++) {
var value = result[i];
alert(i =") "+value);
}
}
控制器(c#):
[HttpPost]
public JsonResult Action()
{
return Json(YourTable.ToArray());
}
此外,您可以从 javascript 访问每个 html 元素。因此,您可以将内容放在各种 html 元素中。
您可以在视图中使用以下方法序列化大多数 C# 对象:
<script type="text/javascript">
var hashtable = @Html.Raw(Json.Encode(Model.YourHashtable)
</script>
如果您有一些类似树的具有父/子关系的数据结构,您可能会遇到问题,因为编码器无法解决循环关系。