एक एजेक्स एक्शन लिंक रखने की कोशिश कर रहा है, जिस पर क्लिक किया गया है, HttpGet
को एक एक्शन विधि में करना चाहिए जो PartialViewResult
देता है और HTML को div में डाल देता है।एएसपी.नेट एमवीसी 3 (रेजर) अजाक्स। एक्शनलिंक - मैं गलत क्या कर रहा हूं?
<div id="admin-options" class="admin"></div>
@Ajax.ActionLink("Show Admin Options", "ShowOptions", "Post", new { area = "Admin" }, new AjaxOptions { UpdateTargetId = "admin-options", HttpMethod = "GET" })
यहाँ कार्रवाई विधि है:
public class PostController : Controller
{
[HttpGet]
[Authorize(Roles="Admin")]
public PartialViewResult ShowOptions()
{
return PartialView();
}
}
यहाँ एचटीएमएल उत्पन्न है:
<a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#admin-options" href="/Admin/Post/ShowOptions">Show Admin Options</a>
मेरे लिए ठीक लग रहा है
यहाँ मेरी दृश्य है।
लेकिन AJAX कॉल करने के बजाय, यह ब्राउज़र यूआरएल के माध्यम से एक नियमित HTTP GET करता है, और /Admin/Post/ShowOptions पर रीडायरेक्ट करता है।
स्पष्ट रूप से मुझे कुछ याद आ रहा है - लेकिन क्या?
अरघ, वह था। मैं अविभाज्य जेएस था लेकिन AJAX अविभाज्य नहीं था। चियर्स! – RPM1984