2010-04-24 13 views
17

में एक गैर-शून्य संपत्ति पर Html.TextBoxFor का उपयोग करके खाली टेक्स्टबॉक्स प्रदर्शित करें मैं इकाई फ्रेमवर्क (v4) इकाइयों का उपयोग कर रहा हूं। मेरे पास कार इंटीजर की एक वर्ष संपत्ति के साथ कार नामक एक इकाई है। साल की संपत्ति न्यूल की अनुमति नहीं देती है। मैं अपने बनाएं ध्यान में रखते हुए निम्नलिखित हैं:एक ईएफ इकाई

<%= Html.TextBoxFor(model => model.Year) %> 

मैं एक नया कार वस्तु वापस जाने के लिए मेरी HttpGet में CarController में कार्य बनाएँ आवश्यक कर रहा हूँ (अन्य आवश्यकताओं के कारण)।

वर्तमान में, वर्ष टेक्स्टबॉक्स में शून्य प्रदर्शित होता है क्योंकि वर्ष की संपत्ति न्यूल की अनुमति नहीं देती है। मैं व्यू व्यू में एक खाली टेक्स्टबॉक्स प्रदर्शित करना चाहता हूं। मैं यह कैसे करु?

उत्तर

1

ऐसा करें:

Html.TextBox("Year", "") 
+0

मैं इसे इस तरह से कर सकता था लेकिन मैं HTML.TextBoxFor का उपयोग करना पसंद करता हूं। – thd

+0

@ एचटीएमएल। टेक्स्टबॉक्स फोर (मॉडल => मॉडल। प्रिय, नया {वैल्यू = ""}) मॉडल बाध्यकारी की अनुमति देता है, यह जवाब नहीं है। – MeanGreen

38

उपयोग HTML विशेषताएं अधिभार। उस्तरा में यह होगा:

@Html.TextBoxFor(model => model.Year, new { Value = "" }) 
+12

यह भी ध्यान रखना महत्वपूर्ण है कि "मूल्य" के लिए काम करने के लिए पूंजी "वी" होनी चाहिए, लेकिन यह सबसे अच्छा समाधान है। – blockloop

+3

जैसा कि मैंने लिंक किए गए प्रश्नों में से एक में एक समान उत्तर पर भी टिप्पणी की है ... यह ध्यान दिया जाना चाहिए कि यह सामान्य एमवीसी सर्वर-साइड सत्यापन के साथ उपयोग किए जाने पर अच्छी तरह से काम नहीं करता है जहां आप सत्यापन त्रुटियों के साथ दृश्य को फिर से चलाते हैं (उदा; 'अगर (! ModelState.IsValid) वापसी देखें (viewmodel)')। जब भी पेज लोड पर टेक्स्टबॉक्स प्रस्तुत किया जाता है, तो यह एक खाली स्ट्रिंग प्रदर्शित करने जा रहा है। पेज के नियमित पहली बार प्रतिपादन के लिए यह बहुत अच्छा है, लेकिन जब वैधता विफल होने के कारण उपयोगकर्ता वापस आ रहा है तो बुरा है। खेतों में जो भी डेटा दर्ज किया गया वह खो जाएगा और खाली स्ट्रिंग के साथ बदल दिया जाएगा। – EF0

-1

यह आप अपने क्षेत्र के लिए संलग्न करने के लिए कोशिश कर रहे हैं या एक खाली TextBoxFor साथ एक मौजूदा क्षेत्र को संशोधित करना चाहते है की कोशिश करो।

Html.TextBoxFor(model => model.Year, Model.Year="") 
संबंधित मुद्दे