我有一个功能,一旦用户单击链接,就会发出 ajax 请求,如果发出请求,则链接不应再可点击。
这是我用来完成此任务的方法:
$('a[id^="rsvp_"]').click (function (e) {
    e.preventDefault();
    $.post(
        $(this).data('url'),
        function(data) {
            $(this).replaceWith(function(){
                alert (data);
                return $("<span>" + data + "</span>");
            });
        }
    );
})  ;
此代码将适用于任何以rsvp_. 一切似乎都有效,包括alert(data)锚标签仍然存在。我只是想将锚标签替换为其他东西。
HTML 片段如下所示
<a id="rsvp_${event.id}" href="#" data-url="${createLink(action: 'myaction', params: ["eventid": event, "userid": user])}">Click to RSVP</a>
更新
请注意,我在页面上有多个这样的链接,即rsvp_1, rsvp_2, rsvp_3 ..etc
我只想删除用户单击的链接上的锚标记。并非页面上的所有链接