如何設置複選框的標籤?我查看了一些網站,他們使用的是lambda表達式,但我無法理解它們。我是asp.net MVC的新手。設置剃鬚刀複選框的標籤
@{
bool chkVal = false;
}
<li>@Html.CheckBox("chksumma",chkVal,new {@value = "5"})</li>
<li>@Html.LabelFor(, "");
如何設置複選框的標籤?我查看了一些網站,他們使用的是lambda表達式,但我無法理解它們。我是asp.net MVC的新手。設置剃鬚刀複選框的標籤
@{
bool chkVal = false;
}
<li>@Html.CheckBox("chksumma",chkVal,new {@value = "5"})</li>
<li>@Html.LabelFor(, "");
如果您正在使用一個你可以這樣做:
<li>@Html.CheckBoxFor(f=> f.chksumma)</li>
<li>@Html.LabelFor(f=> f.chksumma)</li>
然後使用TGH指出
屬性否則,如果你沒有一個模型,你可以做標籤是:
@Html.Label("LabelText")
它打印一個獨立的標籤 或者,如果你想它牛逼手藝它與該項目O鏈接
<label for="chksumma">LAbelText</label>
如果你真的不想手工寫它,你可以編寫自己的HTML幫助這裏解釋 http://develoq.net/2011/how-to-create-custom-html-helpers-for-asp-net-mvc-3-and-razor-view-engine/
我假設你想要的標籤打勾當你點擊它的複選框。
在這種情況下,<label>
字段的for
屬性must point to the ID of the relevant input element。
如果您使用的是模型,@Html.CheckBoxFor
將生成一個沒有ID的複選框,因此您需要向該複選框添加一個ID,然後將您的標籤指向相同的ID。最簡單的方法是使用@Html.NameFor
輔助方法將複選框的名稱複製到其ID字段中。這裏有一個例子:
@Html.CheckBoxFor(x => x.Active, new {id=Html.NameFor(x => x.Active)})
<label for="@Html.NameFor(x => x.Active)">Active</label>
生成的HTML(未經驗證的屬性):
<input id="[0].Active" name="[0].Active" type="checkbox" value="true" />
<input name="[0].Active" type="hidden" value="false" />
<label for="[0].Active">Active</label>
你不應該需要<label>
標籤都:
<div class="block mTop20">
@HtmlCheckboxFor(f => f.prop)
@Html.LabelFor(f=>f.prop,"This is the label text")
</div>
我對類似工作,通過這個剪下的代碼繞過它
<div class="row">
<div class="col-xs-3">
<label>
@Html.CheckBoxFor(x => x.AdvanceSearch.IsExactPhrase)
@Html.LabelFor(x => x.AdvanceSearch.IsExactPhrase)
</label>
</div> ...
希望它可以幫助別人
這是一個非常好的辦法:
<div class="checkbox">
<label>@Html.CheckBoxFor(x => item.IsSelected) @Html.DisplayNameFor(x => item.IsSelected)</label>
</div>
http:// stackoverflow。com/questions/1312880/html-labelfor-specified-text-asp-net-mvc-2 – TGH
如果您在此處發佈模型代碼,我會向您解釋。 – ataravati