成功后取消绑定@ Ajax.ActionLink

时间:2012-02-28 15:01:06

标签: asp.net-mvc razor unobtrusive-javascript

我想在点击后删除Unobtrusive microsoft ajax @ Ajax.ActionLink bind。

类似的东西:

.cshtml:

@Ajax.ActionLink("Edit", "EditDeliveryZones", new { idConnection = ViewBag.idConnection }, new AjaxOptions() { UpdateTargetId = "EditDeliveryZones" }, new { @class = "ajaxdialogopen" })

JavaScript的:

$('.ajaxdialogopen').one('click', function (event) {
     $(this).off('click'); // THIS DOESNT WORK
     this.onclick = null; // THIS DOESN't WORK EITHER
}

谢谢!

3 个答案:

答案 0 :(得分:2)

如何将这样的东西放在你的处理程序中:

$(this).removeAttr('data-ajax');

我相信data-ajax是实时处理程序触发的属性,因此将其从链接中删除应该会阻止它被视为ajax链接。

答案 1 :(得分:0)

您可以尝试类似

的内容
$('.ajaxdialogopen').click( function( event ) { 
    (event.preventDefault) ? event.preventDefault() : event.returnValue = false;
});

答案 2 :(得分:-1)

在阅读microsoft和jquery库之后,它使用LIVE,它反对选择器而不是元素。因此,使选择器不匹配(也就是删除类)会使事件不再触发。

为什么直播的有效原因已被弃用...希望微软很快更新它的库。