Привязать данные к выпадающему списку на событии onfocus - PullRequest
0 голосов
/ 28 марта 2012

Я хочу добавить выпадающий список к веб-сетке и связать его с событием "onfocus", поэтому я попробую следующее без удачи. Мой метод действия следующий:

public ActionResult GetAllCont(){    
    List<Container> Lst = ContanierMgr.GetAllContainers();    
    return Json(Lst, JsonRequestBehavior.AllowGet);    
} 

Метод JQuery следующий:

$(document).ready(function() {
    $("#ContainersDDL").focus(function(event) {
        $.getJSON('@Url.Action("GetAllCont", "Home")', null, function(Containers) {
            var ContainerSelect = event.target.id;
            ContainerSelect.empty();
            $.each(Containers, function(index, container) {
                ContainerSelect.append($('<option/>', {
                    value : container.Id,
                    text : container.Code
                }))
            });
        });
    });
}); 

Код Index.cshtml:

@if (Model != null){    
    @grid.GetHtml(    
        columns: grid.Columns(    
            grid.Column("ID"),    
            grid.Column("Name"),    
            grid.Column("Contaniers", 
                header: "Containers", 
                format: @<span>  @Html.DropDownList("ContainersDDL", Enumerable.Empty<SelectListItem>(), "-- Select --")</span>
            )
        )    
    )
}

У меня две проблемы в приведенном выше коде:

1 - как я могу передать Модель, которая связана с View, в json следующим образом: $.getJSON('@Url.Action("GetAllCont","Home")', { Model : ???????? }, function (Containers)

2 - когда я использую приведенный выше код, он привязывается только к первомувыпадающий список в первой строке веб-сетки !!!!

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...