2013-07-16 2 views
0

Я хочу передать модель в метод действия в моем контроллере, чтобы отредактировать эту модель с помощью всплывающего диалогового окна. Но входной параметр, отшлифованный до метода действия, не заполняется данными.Как передать модель в метод действия из всплывающего диалогового окна?

Вот HTML код из моей точки зрения, что вызывает диалоговое окно:

<span class="label label-border"> 
     <input class="edit_company" type="button" value="Edit" onclick="getForm()" /> 
</span> 

<div id="dialog"></div> 

JavaScript для вызова диалогового окна:

<script type="text/javascript"> 
    function getForm() { 
     $('#dialog').dialog({ 
      autoOpen: true, 
      width: 400, 
      resizable: false, 
      title: 'My Table', 
      modal: true, 
      open: function(event, ui) { 

       $(this).load('@Url.Action("Edit", "Company", Model)'); 
      }, 
      buttons: { 
       "Close": function() { 
        $(this).dialog("close"); 
       } 
      } 
     }); 
    } 
</script> 

... и вот мой метод действия, который вызывает из JavaScript, но данные в нем не заполнены.

enter image description here

ответ

1

Пожалуйста, проверьте, что это URL в вашей команде load. Просто проверьте полученный код сценария.
Вы бы лучше использовать идентификатор компании в URL:

$(this).load('@Url.Action("Edit", "Company", new {id=Model.id})'); 

и в данной нагрузке контроллера компании по идентификатору

public PartialViewResult Edit(int id) 
{ 
    //code to retrive your company from the database by id 
    return PartialView(); 
} 
Смежные вопросы