c# - MVC3,PartialViews,Ajax Passing values -


यह मॉडल example.cs

  नाम स्थान View_Partial_Editor है .Models {सार्वजनिक वर्ग exampleView {... सार्वजनिक स्ट्रिंग Field1 {get; सेट; } सार्वजनिक स्ट्रिंग फ़ील्ड 2 {प्राप्त करें; सेट; } सार्वजनिक स्ट्रिंग फ़ील्ड 3 {प्राप्त करें; सेट; } सार्वजनिक स्ट्रिंग फ़ील्ड 4 {get; सेट; } सार्वजनिक स्ट्रिंग फ़ील्ड 5 {प्राप्त करें; सेट; } ...}}  

मैं इस दृश्य है example.cshtml :

  @model View_Partial_Editor.Models.ExampleView @ {Html.RenderPartial ( "EditExample", मॉडल);} @ Html.TextBoxFor (एम = & gt; m.Field1)  

तो मेरे पास है इस partialView EditExample.cshtml :

  @model View_Partial_Editor.Models.ExampleView @ Html.HiddenFor (एम = & gt; m.Field1) @using (Ajax.BeginForm ( "EditExample", नई AjaxOptions {InsertionMode = InsertionMode .Replace, UpdateTargetId = "partial"})) {& lt; div & gt; @ Html.EditorFor (m = & gt; मी, "संपादक", नल) & lt; / div & gt; & Lt; p & gt; & Lt; इनपुट आईडी = "बटन" प्रकार = "सबमिट करें" मान = "सहेजें" / & gt; & Lt; / p & gt; }  

मैं इस नियंत्रक है ExampleController :

  नाम स्थान View_Partial_Editor.Controllers {सार्वजनिक वर्ग ExampleController: नियंत्रक {// // प्राप्त करें: / उदाहरण / सार्वजनिक कार्यवाही उदाहरण () {वापसी देखें (); } [एचटीपीपीओस्ट] पब्लिक एक्शन रिजल्ट एडिशन उदाहरण (उदाहरण उदाहरण देखें) {example.Field1 = "7"; वापसी देखें ("उदाहरण", उदाहरण); }}}  

और इस संपादक है कि आंशिक में कहा जाता है editor.cshtml

  @model View_Partial_Editor.Models .ExampleView & lt; div class = "editor-label" & gt; @ एचटीएमएल.लैबेलफोर (एम = & gt; एमफिल्ड 1) & lt; / div & gt; & Lt; div class = "editor-field" & gt; @ Html.EditorFor (m = & gt; m.Field1) @ html.ValidationMessageFor (m = & gt; m.Field1) & lt; / div & gt; & Lt; div class = "editor-label" & gt; @ एचटीएमएल.लैबेलफोर (एम = & gt; एमफिल्ड 2) & lt; / div & gt; & Lt; div class = "editor-field" & gt; @ Html.EditorFor (m = & gt; m.Field2) @ html.ValidationMessageFor (m = & gt; m.Field2) & lt; / div & gt;  

मेरी समस्या यह है कि मैं नियंत्रक में एजेक्स कॉल में मॉडल के डेटा को संशोधित करना चाहता हूं, और मॉडल को exampleView में संशोधित किया गया। लेकिन जब एजाक्स ने उस मूल्य को समाप्त कर दिया जिसे मैं नियंत्रक में बदलता हूं मॉडल में बदल नहीं है

संपादित करें: जो बात मैं चाहता हूँ वह अजैक्स मेथोस को कॉल भेजना है, डेटाबेस में कुछ बचा, उसके बाद संशोधित करें मॉडल, और उदाहरण के दृश्य में मैं उस मॉडल को बदलाव के साथ रखना चाहता हूं।

इस क्षण में, अगर मैं अजाक्स के नतीजे के साथ आंशिक दृश्य को बदलता हूं, तो उदाहरण के दृश्य में मॉडल नहीं है संशोधित। एक और तरीका है पूर्ण उदाहरण दृश्य को बदलने के लिए, इसलिए मॉडल वहाँ प्राप्त होता है, लेकिन मुझे Html.HiddenFor का उपयोग करके कई सारे फ़ील्ड्स पास करना होगा, विचारों को बदलने के बिना इसे बनाने के लिए संभव है केवल परिवर्तनों के साथ मॉडल को वापस करना < / P>

अपने एचटीटीपी पोस्ट कार्रवाई विधि में ModelState.Clear () कॉल करने का प्रयास करें। एचटीएमएल हेल्पर्स पहले मॉडलस्टैट में मान का उपयोग करते हैं, फिर मॉडल। यदि आप किसी पोस्ट पर मॉडल में कोई मान बदलते हैं, तो आपको मॉडलस्टैट से मूल्य साफ़ करना होगा।


Comments

Popular posts from this blog

Python SQLAlchemy:AttributeError: Neither 'Column' object nor 'Comparator' object has an attribute 'schema' -

java - How not to audit a join table and related entities using Hibernate Envers? -

mongodb - CakePHP paginator ignoring order, but only for certain values -