ネスト内編集グリッドを機能させるのに問題があります。これは、http://demo.aspnetawesome.com/GridNestingDemoを行うと想定されていることです。グリッド ラインを開き、グリッドで編集します。デモ コードを 1 行ずつコピーすると、グリッドの外側にポップアップ ウィンドウが表示されます。私はデモ プロジェクトを何度も見て、ほとんどすべてを正確にコピーしました。
意見:
@Html.InitCrudForGridNest("LeadGrid", "Leads")
<div class="bar">
<button type="button" onclick="utils.nestCreate('LeadGrid', 'createLeadGrid')" class="awe-btn mbtn">Create</button>
</div>
@(Html.Awe().Grid("LeadGrid")
//.Mod(o => o.PageInfo().InlineEdit(Url.Action("Edit"), Url.Action("Edit")))
.Url(Url.Action("GetLeadList", "Leads"))
.Height(0)
.PageSize(25)
.Nests(
new Nest { ButtonClass = "editnst", GetFunc = "utils.loadNestPopup('editLeadGrid')" })
.Columns(
new Column { Bind = "Id", Width = 50 },
new Column() { Bind = "Assigned To" },
new Column() { Bind = "LeadStatusId" },
new Column() { Bind = "CreatedOn", ClientFormatFunc = "FormatDateTime" },
new Column() { Bind = "CustomerName" },
new Column() { Bind = "CustomerEmail" },
new Column() { Bind = "CustomerPhone" },
new Column() { Bind = "TyreId" },
new Column() { ClientFormat = GridUtils.EditGridNestFormat(), Width = 50 }
)
コントローラ:
public ActionResult GetLeadList(GridParams g, string search)
{
g.PageSize = 25;
//g.Page = 1;
g.Paging = true;
var leadResult = GetLeads(new LeadSearchCriteriaDto { Page = g.Page, PageSize = 25 });
var items = AutoMapper.Mapper.Map<IList<Lead>, IList<LeadViewModel>>(leadResult.Data).AsQueryable();
return Json(new GridModelBuilder<LeadViewModel>(items, g)
{
Key = "Id",
GetItem = () => items.SingleOrDefault(x => x.Id == Convert.ToInt32(g.Key)),
Map = MapToGridModel,
ItemsCount = leadResult.ResultCount,
PageCount = leadResult.ResultCount / 25,
}.Build());
}
また、すべての javascript css およびその他の関連ファイルをデモ プロジェクトから自分のプロジェクトにコピーして、問題がまだ変わらないかどうかを確認しました。私はjavascriptを1行ずつデバッグしましたが、私が見た唯一の違いは、別の関数に行くように見えるコードの深い部分ですが、jqueryコードでは理由がわからず、同じバージョンのjqueryを持っているので、同じでなければなりません。私は本当に途方に暮れています。