के बाद रीफ्रेशिंग नहीं देखें मेरे पास एक इमेजलिंक के साथ एक ग्रिड (इन्फ्राजिस्टिक्स JQuery ग्रिड) के साथ एक दृश्य (index.cshtml) है। एक उपयोगकर्ता के लिए इस लिंक पर क्लिक करता है निम्नलिखित jQuery फ़ंक्शन कॉल किया जाएगा:AJAX पोस्ट
function ConfirmSettingEnddateRemarkToYesterday(remarkID) {
//Some code...
//Call to action.
$.post("Home/SetEnddateRemarkToYesterday", { remarkID: remarkID }, function (result) {
//alert('Succes: ' + remarkID);
//window.location.reload();
//$('#remarksgrid').html(result);
});
}
बाहर टिप्पणी की आप खुद के लिए एक अलर्ट दिखाई और देखने को ताज़ा करने के 2 प्रयत्न कर सकते हैं। Location.reload() काम करता है, लेकिन मूल रूप से ब्राउज़र के लिए बहुत अधिक काम है। .html (परिणाम) पूरी अनुक्रमणिका.cshtml + layout.cshtml को पोस्टस्ग्रिड div में डबल करता है। तो यह सही नहीं है।
public ActionResult SetEnddateRemarkToYesterday(int remarkID) {
//Some logic to persist the change to DB.
return RedirectToAction("Index");
}
यह क्रिया को रीडायरेक्ट है:
यह क्रिया यह कहता है (SetEnddateRemarkToYesterday) है
[HttpGet]
public ActionResult Index() {
//Some code to retrieve updated remarks.
//Remarks is pseudo for List<Of Remark>
return View(Remarks);
}
मैं succesfull के बाद window.location.reload ऐसा नहीं करते हैं AJAX पोस्ट दृश्य कभी पुनः लोड नहीं होगा। मैं एमवीसी के लिए नया हूं, लेकिन मुझे यकीन है कि ऐसा करने का एक बेहतर तरीका है। मैं यहाँ कुछ मौलिक समझ नहीं रहा हूँ। शायद सही दिशा में एक झुकाव? पहले ही, आपका बहुत धन्यवाद।
बेहतर है एक आंशिक दृश्य remarksgrid बनाने के लिए और एक वापस जाने के लिए आंशिक दृश्य परिणाम SetEnddateRemarkTo कल विधि में। – ssilas777
@ ssilas777 आप सही हैं। मुझे एहसास हुआ कि मैंने इसे पोस्ट करने के एक दिन बाद, जिस समाधान के लिए मैं गया था। जवाब देने के लिए धन्यवाद। –