2009-04-19 16 views
25

मैं शैक्षिक उद्देश्यों के लिए डेमो एएसपी.नेट एमवीसी ऐप बनाने की प्रक्रिया में हूं।एएसपी.नेट एमवीसी के साथ मूल AJAX उदाहरण?

मेरे पास एक छवि/लिंक है जो एक पद को आपत्तिजनक के रूप में ध्वजांकित करता है। मैं AJAX के माध्यम से सर्वर से अनुरोध करना चाहता हूं कि आप आक्रामक ध्वजांकित करें और यह सुनिश्चित कर लें कि उपयोगकर्ता की यह क्षमता है।

यदि उपयोगकर्ता करता है, तो मैं डेटाबेस में आक्रामक के रूप में पोस्ट को ध्वजांकित करना चाहता हूं और लौटता हूं कि ध्वज गुजर गया। यदि उपयोगकर्ता आइटम को ध्वजांकित करने का अधिकार नहीं रखता है तो मैं क्लाइंट को एक नकारात्मक संदेश वापस करना चाहता हूं ताकि मैं एक अच्छा jQuery बॉक्स पॉपअप कर सकूं जिसमें यह नहीं हुआ कि यह नहीं हुआ।

मैं इसे पूर्ण पोस्टबैक/रीफ्रेश किए बिना सब कुछ करने की कोशिश कर रहा हूं।

क्या किसी के पास एमवीसी के साथ किए गए सरल AJAX अनुरोधों के उदाहरणों के कोई लिंक हैं?

उत्तर

24

यह वास्तव में jQuery के साथ बहुत आसान है।

<a href="javascript:flagInappropriate(<%=Model.PostId%>);">Flag as inappropriate</a> 

एक जावास्क्रिप्ट बनाएं अपने नियंत्रक में कार्रवाई की जाँच करने और ध्वज के रूप में आवश्यक कॉल करने के लिए: अपने नियंत्रक में आप कार्रवाई विधि में

function flagInappropriate(postId) { 
    var url = "<CONTROLLER>/<ACTION>/" + postId; 
    $.post(url, function(data) { 
     if (data) { 
      // callback to show image/flag 
     } else { 
      // callback to show error/permission 
     } 
    }); 
} 

शायद दिखेगा मान लें कि आपका लिंक कुछ इस तरह है चलो इस तरह:

[AcceptVerbs("POST")] 
public bool FlagAsInappropriate(int id) { 
    // check permission 
    bool allow = CheckPermission(); 

    // if allow then flag post 
    if (allow) { 
     // flag post 

     return true; 
    } else { 
     return false; 
    } 
} 
+0

क्यों अपने उदाहरण कोड में ऊपर तुम सिर्फ वापस नहीं होगा CheckPermission(); ? –

+4

क्योंकि यदि चेकप्रमिशन सत्य लौटाता है तो आप कुछ अतिरिक्त तर्क/कार्रवाई करना चाहेंगे - // ध्वज पोस्ट क्षेत्र देखें –

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