2

这是我的 JQuery 代码。

function markread(ID) {
    $.get("markread.php?id="+ID);
}

这是我的html

<div id='notificationitem-3' class='notificationitem'>
    <div class='notificationpic'>
        <img src='sadf' />
    </div>
    <div class='notmessage'><a href='asdf' onClick="markread(3);">Mark Ross has sent you a friend request.</a>
    </div>
</div>

除非有 alert(""); 否则 get 请求不会通过。在它之后。为什么是这样?

4

2 回答 2

0

因为您要点击a标记,所以您需要防止默认行为,否则位置更改会中止 ajax 操作,请查看此

function markread(e,ID) {
  e.preventDefault(); 
  $.get("markread.php?id="+ID, function(data) {
        $('.result').html(data);
        alert('Load was performed.');
       location.href   = $('.notmessage').closest('a').attr('href');
   });
}
于 2013-07-19T03:30:44.090 回答
-1

这个问题的一个糟糕的解决方案是在 JS 函数中设置位置而不使用 href。

function markread(ID, gohere)
{
       $.get("markread.php?id="+ID,
               function(data)
               {
                     window.location.href = gohere;
               }
       );
}

只需将链接添加为第二个参数

于 2013-07-19T03:46:47.180 回答