2011-03-17 12 views
12

में एचटीएमएल संपादक से नियंत्रक कार्रवाई में डेटा पोस्ट करें मैं अपने एमवीसी आवेदन में एचटीएमएल संपादक के लिए jquery.cleditor.js प्लगइन का उपयोग कर रहा हूं और यह ठीक काम कर रहा है। अब मैं कार्रवाई नियंत्रक को संपादक मूल्य पोस्ट करना चाहते हैं, लेकिन यहाँ मैं निम्नलिखित अपवाद हो रही है:एमवीसी

A potentially dangerous Request.Form value was detected from the client 
    (NewContentPage.PageContents="<STRONG>dafs </STRON..."). 

कोई तो विचार है, तो कृपया मुझे गाइड यह करने के लिए।

+0

आईआईएस, .NET Framework, ASP.NET MVC का क्या संस्करण आप उपयोग कर रहे हैं? – Jon

+0

4.0 एमवीसी 2 के साथ नेट फ्रेमवर्क और मेरी स्थानीय मशीन – munish

+0

जॉन पर इसका परीक्षण, मुझे समाधान मिला: web.config फ़ाइल में system.web टैग के तहत जोड़ें और जोड़ें [ValidateInput (false)] 'AllowHtml' के लिए नियंत्रक – munish

उत्तर

23

यदि आप false के साथ ValidateInput विशेषता जोड़ते हैं तो यह आपको HTML सबमिट करने की अनुमति देगा। बस ध्यान रखें कि आप ViewModel

[HttpPost, ValidateInput(false)] 
public ActionResult DoStuff(MyViewModel viewModel) 
{ 
    //... 
} 

में गुण के सभी के लिए सत्यापन के बदल रहे हैं आप नेट 4 उपयोग कर रहे हैं आप भी अपने web.config फ़ाइल में <httpRuntime requestValidationMode="2.0" /> सेट करना होगा हो सकता है।


आप MVC 3 उपयोग कर रहे हैं आप आप जोड़ सकते हैं नियंत्रक कार्रवाई AllowHtml ViewModel में संपत्ति के लिए विशेषता के लिए ValidateInput विशेषता जोड़ने के लिए नहीं है।

public class MyViewModel 
{ 
    public string prop1 { get; set; } 

    [AllowHtml] 
    public string prop2 { get; set; } 
} 

यह prop2 के लिए HTML की अनुमति देता है, लेकिन MyViewModel के बाकी वैध किया जाएगा।

+2

+1 की क्रिया विधि पर – Askolein