2009-12-08 19 views
7

से पहले निकाल दिया गया है, मैं डेटाबेस में किसी आइटम को जोड़ने के बाद एजेक्स फॉर्म को साफ़ करने का प्रयास कर रहा हूं, हालांकि फॉर्म को सबमिट करने से पहले ऑनकंपलेट और ऑनसुफ अजाक्सऑप्शन को कॉल किया जाता है। मैं इसे कैसे प्राप्त कर सकता हूं ताकि फ़ॉर्म पहले सबमिट किया जा सके और ऑनकंपलेट कहा जाता है।एमवीसी अजाक्स। बिगिनफॉर्म ऑनकंपलेट/ऑनसेफ कंट्रोलर कॉल

<% using (Ajax.BeginForm("AddTable", new AjaxOptions 
             { 
              UpdateTargetId = "tables", 
              InsertionMode = InsertionMode.InsertAfter, 
              OnComplete = "ClearForm()" 
             })) 
    {%> 

जो

function ClearForm() { 
     $('#DisplayName').val(''); 
    } 

कॉल हालांकि DisplayName पाठ बॉक्स balue नियंत्रक फार्म के लिए प्रस्तुत करने के लिए भेजे जाने से पहले मंजूरी दे दी है। क्या इसके चारों ओर एक रास्ता है।

उत्तर

13

OnComplete = "ClearForm()" कोष्ठक के बिना बुलाया जाना चाहिए, यानी OnComplete = "ClearForm"। मैं यह सुनिश्चित करने के लिए नहीं कह सकता कि यह आपकी समस्या को ठीक करेगा।

+0

मुझे संदेह है कि यह यह है। कॉलबैक सेट करने वाला कोड ClearForm() को कॉल कर रहा है और कॉलबैक हैंडलर के रूप में ClearForm के फ़ंक्शन संदर्भ को निर्दिष्ट करने के बजाय कॉलबैक हैंडलर को असाइन करने के परिणाम का उपयोग कर रहा है। – tvanfosson

+0

शानदार, चीयर्स दोस्तों, यह हमेशा कुछ मूर्खतापूर्ण है जो आपको पकड़ता है। :) – Israfel

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