我想将下拉列表添加到webgrid并将其绑定在“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-当我使用上面的代码时,它只绑定到webgrid第一行的第一个下拉列表!!!!
先谢谢