2016-06-30 3 views
0

コンポーネントを部分的に動的に作成するビューがあり、場合によってはこれらのコンポーネントを読み込み専用にする必要があります。私は、しかし、この場合には、それらをループ内で作成され、そのうちの任意の数がある可能性が@ Html.TextBoxFor()を読み取り専用またはダイバーブとして作成する方法

$(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を挿入しようとしましたが、それはうまくいきませんでしたように私のどちらかが間違った構文を得ました。

答えて

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"}) 
+0

おかげで、アップいくつかの構文エラーを通して、あなたの答えが、私は少しそれを微調整し、{「無効」になってしまいました」本当の "}})。 – user616076

+0

@ user616076無効、読み取り専用、必須、およびチェックはすべて[ブール属性](https://www.w3.org/TR/html5/infrastructure.html#boolean-attribute)であり、存在する場合は常にtrueであり、暗黙的にfalse省略時。たとえば、disabled = "yeehaw"はdisabled = "false"と変わらず、どちらも実際に要素を無効にします。 disabled = "disabled"(または実際には任意の値)は、単にXMLに準拠するためのものです。 –

関連する問題