我正在尝试通过Ajax检索html部分视图,然后在Jqgrid单元格中分配它。 html(下拉列表)在ajax中被很好地检索,并且它也被添加到jqgrid单元格中。
我面临的问题是我尝试在将其放入jqgrid之前尝试为该html分配一个新的attr值(我试图添加jqgrid行id以便稍后可以识别哪一行的下拉列表点击了)。
代码如下:
$.ajax({
url: '@Url.Action("GetCourierCompanies", "<controller>")', type: "POST", dataType: "html",
data: { StoreId: storeid },
async: false,
success: function (msg) {
var ids = $("#grid").jqGrid('getDataIDs');
for (var i = 0; i < ids.length; i++) {
var html = $(msg).html();
$(html).find("select").data("id",ids[i]);
jQuery("#grid").jqGrid('setRowData', ids[i], { Courier: html });
}
},
error: function () {
alert("Unable to retrive Courier company list..");
}
});
部分视图的内容如下:
<div>
<select class="CourierDropdown" onchange="GetServiceList()">
@foreach (<namespace>CourierCompany item in Model)
{
<option value="@item.Oid">@item.CompanyName</option>
}
</select>
</div>
外部div的原因是,在使用.html()
时,它会返回响应的innerhTML
,在这种情况下(已验证)是select
标记
任何帮助将不胜感激。