0

部分ビューでコンポーネントを動的に作成するビューがあり、場合によってはこれらのコンポーネントを読み取り専用にする必要があります。以下のコードを使用して、他のコンポーネントで正常に管理しました

$(document).ready(function () {
    if("@Model.IsUnderReview" == "True") {
        document.getElementById("textbox_" + "@Model.ID").disabled = true;
    }
});

ただし、この場合、それらはループで作成され、任意の数が存在する可能性があります。以下のコードを読み取り専用に設定するにはどうすればよいですか?

@Html.TextBoxFor(m => m.Configuration.First(c => c.ID == config.ID && c.ProductRow == config.ProductRow).TextboxEntry, new Dictionary<string, object>{
                        {"id", "infoTextbox_" + Model.NumberOfDuplicates + "_" + config.ID},
                        {"configid", (config.ID + Model.NumberOfDuplicates)},
                        {"onchange", "HandleChange($(this))"}}) 

@readonly = "readonly" を挿入しようとしましたが、機能しなかったため、構文が間違っていました。

4

1 に答える 1

0

htmlAttributes に追加するだけの場合:

            @Html.TextBoxFor(m => m.Configuration.First(c => c.ID == config.ID && c.ProductRow == config.ProductRow).TextboxEntry, new Dictionary<string, object>{
                    {"id", "infoTextbox_" + Model.NumberOfDuplicates + "_" + config.ID},
                    {"configid", (config.ID + Model.NumberOfDuplicates)},
                    {"onchange", "HandleChange($(this))"}}, new { @disabled = "disabled"}) 
于 2016-06-30T09:35:01.063 に答える