2015-01-13 6 views
5

मुझे HTML.EditorFor() में सीएसएस क्लास जोड़ने में समस्या है। अगर किसी को भी एक ही समस्या थी तो मैं नेट पर खोज कर रहा था लेकिन मुझे कुछ भी नहीं मिला।HTML.Editor कक्षा जोड़ने के लिए

क्या आप कृपया मेरी मदद कर सकते हैं? इसलिए, सीएसएस के बारे में कोई समस्या नहीं है जिसे वर्ग परिभाषित नहीं किया गया है, लेकिन यह है, यह इनपुट फ़ील्ड में नहीं जोड़ा गया है।

@model eVinogradarstvo.Models.DetaljiViewModel 

@{ 
    ViewBag.Title = "Edit"; 
} 

@using (Html.BeginForm("PromijeniPodatke", "KorisnikDetalji", FormMethod.Post, new { enctype = "multipart/form-data",@class="form-horizontal" })) 
{ 
@Html.AntiForgeryToken() 

<div class="col-sm-12"> 
    @Html.ValidationSummary(true) 
    @Html.HiddenFor(model => model.kd.id) 
    @Html.HiddenFor(model => model.kd.korisnik_id) 
    @Html.HiddenFor(model => model.kd.slika) 
    @Html.HiddenFor(model => model.kd.dokument_id) 
    <table class="table table-responsive"> 
     <tr> 
      <td>Slika profila</td> 
      <td><input type="file" name="uploadImages" class="input-files" /></td> 
     </tr> 
     <tr> 
      <td>@Html.DisplayNameFor(model => model.kd.ime)</td> 
      <td> 
       @Html.EditorFor(model => model.kd.ime, new { htmlAttributes = new { @class = "form-control" } }) 
       @Html.ValidationMessageFor(model => model.kd.ime) 
      </td> 
     </tr> 
     <tr> 
      <td>@Html.DisplayNameFor(model => model.kd.prezime)</td> 
      <td> 
       @Html.EditorFor(model => model.kd.prezime, new { @class = "form-control" }) 
       @Html.ValidationMessageFor(model => model.kd.prezime) 
      </td> 
     </tr> 
     <tr> 
      <td>@Html.DisplayNameFor(model => model.kd.adresa)</td> 
      <td> 
       @Html.EditorFor(model => model.kd.adresa, new { @class = "form-control" }) 
       @Html.ValidationMessageFor(model => model.kd.adresa) 
      </td> 
     </tr> 
     <tr> 
      <td>@Html.DisplayNameFor(model => model.kd.grad)</td> 
      <td> 
       @Html.EditorFor(model => model.kd.grad) 
       @Html.ValidationMessageFor(model => model.kd.grad) 
      </td> 
     </tr> 
     <tr> 
      <td>@Html.DisplayNameFor(model => model.kd.drzava)</td> 
      <td> 
       @Html.EditorFor(model => model.kd.drzava) 
       @Html.ValidationMessageFor(model => model.kd.drzava) 
      </td> 
     </tr> 
     <tr> 
      <td>@Html.DisplayNameFor(model => model.kd.datum_rodenja)</td> 
      <td> 
       @Html.EditorFor(model => model.kd.datum_rodenja) 
       @Html.ValidationMessageFor(model => model.kd.datum_rodenja) 
      </td> 
     </tr> 
     <tr> 
      <td>Mjerna jedinica težine</td> 
      <td> 
       @Html.DropDownListFor(model => model.kd.mj_tezine, new SelectList(Model.DDLtezina, "vrijednost", "opis")) 
       @Html.ValidationMessageFor(model => model.kd.mj_tezine) 
      </td> 
     </tr> 
     <tr> 
      <td>Mjerna jedinica tekućine</td> 
      <td> 
       @Html.DropDownListFor(model => model.kd.mj_tekucine, new SelectList(Model.DDLtekucina, "vrijednost", "opis")) 
       @Html.ValidationMessageFor(model => model.kd.mj_tekucine) 
      </td> 
     </tr> 
     <tr> 
      <td></td> 
      <td><input type="submit" value="Spremi" class="btn btn-default" /></td> 
     </tr> 
    </table> 
</div> 

}

कोई सुझाव: यह ध्यान में रखते हुए कोड है?

+0

देखें इस [http://stackoverflow.com/questions/4576209/एएसपी-नेट-एमवीसी -3-रेज़र-जोड़-श्रेणी-से-संपादक के लिए] [1] [1]: http://stackoverflow.com/questions/4576209/asp-net-mvc-3-razor-adding-class-to-editorfor –

+0

मैंने इसे पहले ही देखा है, और मेरा वाक्यविन्यास सही है । मैंने jquery के साथ कक्षाओं को जोड़ने के अलावा वहां से सब कुछ करने की कोशिश की है ... अगर यह काम करने के लिए गतिशील रूप से कक्षाओं को जोड़ता है तो यह कोई समझ नहीं आता है ... शायद यह किसी प्रकार का बग या कुछ है? या मुझे कुछ याद आ रहा है ... – Veki

+0

@Veki तो आपने एक कस्टम संपादक टेम्पलेट बनाया है क्योंकि उस प्रश्न में स्वीकृत उत्तर कहता है? क्या आप इसके लिए अपने प्रश्न में कोड जोड़ सकते हैं? – Rhumborl

उत्तर

5

संपादक एएसपी.नेट एमवीसी 3 में जेनरेट किए गए एचटीएमएल को इस तरीके से गुजरने का समर्थन नहीं करता है। आपको एक कस्टम संपादक टेम्पलेट बनाना होगा और कस्टम व्यूडेटा प्रविष्टियां पास करनी होंगी और इसे मैन्युअल रूप से करें (शो के ऊपर दिए गए लिंक के रूप में)।

यह एमवीसी 5.1 में ठीक किया गया था, लेकिन संपादक के साथ एमवीसी 3 में यह काम करने का कोई तरीका नहीं है अगर आप अपने टेम्पलेट्स बनाने के इच्छुक नहीं हैं।

+0

5.1? ठीक है, अब मुझे पता है कि समस्या क्या है, मैं एमवीसी 5.0 पर हूं। बहुत बहुत धन्यवाद, मैं देखूंगा कि मैं इसे काम करने के लिए इसे अपग्रेड करने जा रहा हूं, या मैं इसे टेक्स्टबॉक्स में बदल दूंगा। – Veki

+0

@ वेकी अगर आप एमवीसी 5 पर हैं तो आपने प्रश्न को एमवीसी 3 के रूप में क्यों चिह्नित किया? –

+0

यूएफ, मैंने यह नहीं देखा, मैं जो पेशकश करता था उसे उठा रहा था, और मुझे लगता है कि मैंने अच्छा नहीं पढ़ा। मैं इसे अभी बदल दूंगा। मुझे खेद है – Veki

0

उपयोग पाठ बॉक्सके बजाय EditFor यहाँ विशेष एचटीएमएल गुण समर्थित नहीं हैं, यह केवल MVC से समर्थित है 5. पाठ बॉक्स MVC 4 के लिए समर्थन करना चाहिए है, मैं दूसरे संस्करण के बारे में पता नहीं है।

@Html.TextBox("test", "", new { @id = "signupform", @class = "form-control", @role = "form",@placeholder="Name" }) 
1

आसान तरीका jQuery का उपयोग कर और का उपयोग कर नियंत्रण आईडी नाम जोड़ने है

$(document).ready(function() { 
    $('#LastName').addClass('form-control'); 
}); 

Set the class attribute to Html.EditorFor

संबंधित मुद्दे