1

次のような状況があります。

@Html.EditorFor(m => m.Name)
@Html.EditorFor(m => m.Description)

@(Html.Telerik().Grid<ProductModel.ProductDataSampleModel>()
    .Name("productdatasample-grid")
    .DataKeys(keys => keys.Add(x => x.Id))
    .DataBinding(dataBinding => dataBinding.Ajax()
        .Select("ProductDataSampleList", "Product", new { productId = Model.Id })
        .Insert("ProductDataSampleInsert", "Product", new { productId = Model.Id })
        .Update("ProductDataSampleUpdate", "Product", new { productId = Model.Id })
        .Delete("ProductDataSampleDelete", "Product")
    )
    .Columns(columns =>
    {
        columns.Bound(x => x.Name);
        columns.Bound(x => x.Description);
        columns.Command(commands => { commands.Edit(); commands.Delete(); });
    })
    .ToolBar(commands => commands.Insert())
    .EnableCustomBinding(true))
)

ご覧のとおり、フォームには2 つの編集フィールドがNameありDescription、グリッドにも同じ名前の 2 つの編集フィールドがあります。フォームの各フィールドは、次のような入力要素を作成します。

<input type="text" name="Name" id="Name" />
<input type="text" name="Description" id="Description" />

グリッドで行を挿入または編集すると、同じ名前と ID を持つ別の 2 つのテキスト ボックスが作成されます。名前は問題になりませんが、ページに同じ ID を持つ 2 つの要素があると、あらゆる種類の混乱が生じます。

このジレンマを解決する適切な方法は何ですか?

4

0 に答える 0