【发布时间】:2012-06-21 10:43:44
【问题描述】:
我正在尝试在提交点击之前修改锚点中的 href。
但是,下面会创建一个无限循环:
$('.preview').live('click', function(e){
e.preventDefault();
var _this = this;
var content = $('#redactor_content').getCode();
var page_id = $('#page_id').val();
$.ajax({
url: ADMIN_CORE_URL + 'pages/autosave.php',
dataType: 'json',
type: 'POST',
data: {page_id : page_id, content : content},
success: function(data){
var url = $(_this).attr('href') + data.revision_id;
$(_this).attr('href', url);
$(_this).unbind('click').click();
}
});
});
要么我无法点击提交,要么我得到了循环。
如何在没有循环的情况下重新启用点击?
【问题讨论】:
-
所以你只想更改第一次点击的href?
-
从这个线程和其他地方的答案看来,似乎没有办法撤消 preventDefault()。我们仅限于 A) 重新注册事件处理程序,或 B) 确保从一开始就不会调用 preventDefault()。
标签: jquery click preventdefault