2012-05-22 2 views
0

Есть ли способ передать HashTable, загруженный ключом/значениями на страницу Просмотр в пути Я могу использовать его через javascript/Jquery?Пропустить HashTable для просмотра с контроллера в MVC 3

Пример: У меня есть HashTable с

key = Car Model (206 XT), Value = "PEUGEOT", etc............... 

Таким образом, в представлении у меня есть комбо со всеми моделями автомобилей и около того, у меня есть текстовое поле автоматически заполняется производителем взяты из JavaScript

Есть ли способ сделать это?

(я действительно нуб в MVC 3 :()

ответ

1

Есть другой способ решить эту проблему:

если вы wan't, чтобы получить этот список dynamicaly с вне перезагрузки вы можете использовать запрос JSON (examples)

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); 
    } 
     } 

Controler (C#):

[HttpPost] 
    public JsonResult Action() 
    { 
     return Json(YourTable.ToArray()); 
    } 

Кроме того, вы можете получить доступ к любому HTML-элемент из JavaScript. Таким образом, вы можете разместить контент во всех типах html-элементов.

0

Вы можете сериализовать большинство объектов C#, используя следующий метод в представлении:

<script type="text/javascript"> 
    var hashtable = @Html.Raw(Json.Encode(Model.YourHashtable) 
</script> 

Если у вас есть дерево, как структуры данных с родителем/дочерних отношений вы можете столкнуться с проблемами, поскольку кодер не может решить круговые отношения.

Смежные вопросы