Как вызвать действие MVC3 ViewResult из jquery / javascript? - PullRequest
0 голосов
/ 05 декабря 2011

Как я могу вызвать действие / метод контроллера ViewResult из jquery / javascript, используя нечто похожее на следующий код:

Index.cshtml (обратный вызов для множественного выбора):

  <script type="text/javascript">
        $("select").multiselect({
            click: function (event, ui) {
                // item selected
                //
                // Also, not sure how I can pass in values from a multiselect to update my grid
                // ...using ajax or post???
                $.post(
                    '@Url.Action("Index","Main")'); 
                     //, { value: ui.value, state: ui.checked ? 'checked' : 'unchecked' });
                     // call my index() and get values or pass in values from multiselect
                // or...
                $.ajax(
                   { url: '@Url.Action("Index","Main")'...// }
                    //, { value: ui.value, state: ui.checked ? 'checked' : 'unchecked' });
                    // call my index() and get values or pass in values from multiselect
                                })
            }
        });
</script>

Контроллер:

 // GET: /Main/
    public ViewResult Index(/* not sure if possible */ 
         /* get values from multiselect */
         string[] MultiselectId)
    {
        // Populate default grid view
        IList<CModel> cs = db.CModels.OrderByDescending(x => x.CName).ToList();

       // get values in #multiselect and filter grid contents based on that filter value
       // if a filter was selected...

       return View(cs);
    }

1 Ответ

2 голосов
/ 05 декабря 2011
 $("select").multiselect({
            click: function (event, ui) {                
                $.post('@Url.Action("Index","Main")',{value:ui.value},function(data){
                //refresh the grid here                  
                },'json');               
             }
          });

ваш контроллер будет выглядеть как

[HttpPost]
public ActionResult Index(string value){

 return Json(new{data="yourdata"});
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...