2013-07-13 6 views
18

कोई चेकबॉक्स का लेबल कैसे सेट करता है? मैंने कुछ साइटों को देखा और वे लैम्ब्डा अभिव्यक्तियों का उपयोग कर रहे हैं, लेकिन मैं उन्हें समझ नहीं पा रहा हूं। मैं एएसपीएनटी एमवीसी के लिए नया हूँ।रेजर में चेकबॉक्स के लिए लेबल सेट करें

@{ 
    bool chkVal = false; 
} 
<li>@Html.CheckBox("chksumma",chkVal,new {@value = "5"})</li> 
<li>@Html.LabelFor(, ""); 
+0

http: // stackoverflow।कॉम/प्रश्न/1312880/एचटीएमएल-लैबेलर-निर्दिष्ट-टेक्स्ट-एएसपी-नेट-एमवीसी -2 – TGH

+0

यदि आप यहां अपने मॉडल के लिए कोड पोस्ट करते हैं तो मैं आपको यह समझाऊंगा। – ataravati

उत्तर

11

आप एक मॉडल का उपयोग कर रहे हैं, तो आप कर सकता है:

<li>@Html.CheckBoxFor(f=> f.chksumma)</li> 
<li>@Html.LabelFor(f=> f.chksumma)</li> 

फिर गुण TGH

ने बताया उपयोग करें अन्यथा यदि आप एक मॉडल आप सभी लेबल के लिए क्या कर सकते हैं की जरूरत नहीं है है:

@Html.Label("LabelText") 

जो एक स्टैंडअलोन लेबल या प्रिंट और यह शिल्प अगर आप इसे टी चाहते हैं आइटम के साथ ओ लिंक

<label for="chksumma">LAbelText</label> 

तुम सच में नहीं है यह शिल्प हाथ आप अपने खुद के एचटीएमएल सहायक लिख सकते हैं जैसा कि यहां बताया http://develoq.net/2011/how-to-create-custom-html-helpers-for-asp-net-mvc-3-and-razor-view-engine/

7

मैं यह सोचते कर रहा हूँ कि आप टिक लेबल चाहते हैं चाहते हैं जब आप उस पर क्लिक करते हैं तो चेकबॉक्स।

इस मामले में, एचटीएमएल <label> क्षेत्र must point to the ID of the relevant input element की for विशेषता।

यदि आप मॉडल का उपयोग कर रहे हैं, तो @Html.CheckBoxFor आईडी के बिना एक चेकबॉक्स उत्पन्न करेगा, इसलिए आपको चेकबॉक्स में एक आईडी जोड़नी होगी, फिर अपने लेबल को उसी आईडी पर इंगित करें। @Html.NameFor सहायक विधि का उपयोग करके चेकबॉक्स के नाम को अपने आईडी फ़ील्ड में दोहराना सबसे आसान तरीका है।

@Html.CheckBoxFor(x => x.Active, new {id=Html.NameFor(x => x.Active)}) 
<label for="@Html.NameFor(x => x.Active)">Active</label> 

जनरेट किया गया एचटीएमएल (मान्यता गुण के बिना)::

<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> 
-3

आप सब पर <label> टैग आवश्यकता नहीं होनी चाहिए: यहाँ एक उदाहरण है

<div class="block mTop20"> 
    @HtmlCheckboxFor(f => f.prop) 
    @Html.LabelFor(f=>f.prop,"This is the label text") 
</div> 
1

मैं ऐसी ही कुछ पर काम किया और इस स्निप कोड द्वारा

<div class="row"> 
<div class="col-xs-3"> 
<label> 
    @Html.CheckBoxFor(x => x.AdvanceSearch.IsExactPhrase) 
    @Html.LabelFor(x => x.AdvanceSearch.IsExactPhrase) 
</label> 
</div> ... 

आशा है कि यह दूसरों

6

यह एक बहुत अच्छा तरीका है में मदद करता है:

<div class="checkbox"> 
    <label>@Html.CheckBoxFor(x => item.IsSelected)&nbsp;@Html.DisplayNameFor(x => item.IsSelected)</label> 
</div> 

Check box with label

  1. यह क्या bootstrap 3 द्वारा सिफारिश की है।
  2. यह एक तालिका में काम करता है।
  3. आप बॉक्स का चयन करने के लिए चेक बॉक्स या लेबल पर क्लिक कर सकते हैं। (यह एक महत्वपूर्ण उपयोगिता सुविधा है।)
  4. कर्सर तीर पॉइंटर के बजाय ठीक से "हाथ" है।
संबंधित मुद्दे