2013-05-20 5 views
9

मुझे एक ही समय में @ Html.TextBox mvc4 में सीएसएस क्लास और आईडी जोड़ने की आवश्यकता है। मैंएक ही समय में @ Html.TextBox mvc4 में सीएसएस क्लास और आईडी को जोड़ने के लिए

@Html.TextBox("name", new { id = "name"}, new { @class = "text-field" }) 

कोशिश लेकिन परिणाम के रूप में मैं

<input class="text-field" id="name" name="name" type="text" value="{ id = name }"> 

मिल मैं यहाँ विशेषता मान आवश्यकता नहीं है।
मैं पाने के लिए

<input type="text" value="" name="name" id="name" class="text-field" /> 

उत्तर

18

सही overload method

public static MvcHtmlString TextBox(
    this HtmlHelper htmlHelper, 
    string name, 
    Object value, 
    Object htmlAttributes 
) 

आप id HtmlAttribute के रूप में उपयोग करना चाहते हैं की कोशिश करो, तो आप HtmlAttributes वस्तु में इसका इस्तेमाल करना चाहिए की जरूरत है। TextBox का सही उपयोग है:

@Html.TextBox("name", 
    null, 
    new { 
     id = "name", 
     @class = "text-field" 
}) 

अगर आप मार्ग वस्तु में id रखें, फिर आईडी एक मार्ग मान होगा।

+0

क्या मुझे 'सार्वजनिक स्थैतिक एमवीसीएचटीएमएलस्ट्रिंग टेक्स्टबॉक्स 'को सही करने की आवश्यकता है? कहा पे? – Heidel

+0

नहीं, पहला कोड ब्लॉक एमवीसी टेक्स्टबॉक्स तत्व विधि है। मैंने आपको यह दिखाने के लिए लिखा था। आपको उपयोग करना चाहिए, दूसरा कोड ब्लॉक ... –

+0

धन्यवाद, मुझे समझ में आया, यह काम करता है! – Heidel

4

@Html.TextBox("name", 
    null, 
    new { 
     id = "name", 
     @class = "text-field" 
    }) 
+0

मैं इस कोशिश की देखते हैं, लेकिन मैं '' – Heidel

+0

गायब दूसरे पैरामीटर को जोड़ें, दस्तावेज में हाथ नहीं था :) – Gorgsenegger

+0

ओह, मैं देखता हूं, धन्यवाद! – Heidel

1

मैं बस नया कीवर्ड का उपयोग करता हूं। उदाहरण के लिए निम्नलिखित कोड

@Html.TextBoxFor(m => m.Venue, new { @class = "form-control", @id = "AnyCustomID" }) 
संबंधित मुद्दे