是否有一种简单的方法可以将生成的Helper函数Ajax.ActionLink的输出替换为使用Jquery而不是MS?
或者我必须在自定义扩展程序中完成所有工作吗? 有人必须这样做
编辑:
我想我正在考虑用JQuery完成的东西替换MicrosoftMVCAjax.js。或许叫做JQueryMVCAjax的东西......
答案 0 :(得分:2)
首先在视图中将Ajax.ActionLink
替换为Html.ActionLink
并为其指定一个唯一ID,以便您可以在javascript中为其添加处理程序:
<%: Html.ActionLink("link text", "action", "controller", null,
new { id = "mylink" }) %>
然后在单独的js文件中附加一个单击处理程序:
$(function() {
$('#mylink').click(function() {
// send ajax request
$.get(this.href, function(result) {
// The ajax request succeeded => do something with the results
alert(result);
});
// make sure you cancel the default redirect action
return false;
});
});
如果您只想用AJAX请求的结果替换某些div的内容,可以使用.load()
函数:
$(function() {
$('#mylink').click(function() {
$('#resultDiv').load(this.href);
return false;
});
});