0
<script type="text/javascript">

      var url = document.URL;
      var strg = url.toString();
function StartAjax(ResultsId){
    $.ajax({
      type: "GET",
      url: "mark.php",
      cache: false,
    data: (strg),
      success: function(html){
        $("#"+ResultsId).append(html);
        **$("#").hide();**
      }

    });

}
</script>

<br><a href="#" name="link"  onclick="StartAjax('ResultsId');">Proceed</a>
<div id="ResultsId"></div>

Ajax 做了它应该做的事情,但是我如何在链接被点击后隐藏它?

4

3 回答 3

0

你应该能够做一个 $(this).hide(); 或者你可以给锚标签一个类

<br><a href="#" name="link" class="thisBtn" onclick="StartAjax('ResultsId');">Proceed</a>

接着

success: function(html){
    $("#"+ResultsId).append(html);
    $(".thisBtn').hide();
  }
于 2012-07-17T14:05:33.640 回答
0


<a href="#" name="link" class="clickme" onclick="StartAjax('ResultsId');">Proceed</a>

    $('.clickme').click(function(event){

        var _this = this;
        $.ajax({
          type: "GET",
          url: "mark.php",
          cache: false,
        data: (strg),
          success: function(html){
            $("#"+ResultsId).append(html);

            $(_this).hide();

          }

        });

});

所以你在这里做的是在你身上注册点击事件,一旦它运行你就保存对当前元素的引用。由于它仍在同一范围内运行,因此您可以成功访问它并且可以隐藏它。

于 2012-07-17T14:04:05.013 回答
0

您实际上是在问“如何使用 jQuery 选择元素”。在您的 HTML 的当前状态下,链接可能会像这样定位:

$('a[name=link]').hide();

但是,由于代码在由链接调用的事件回调中运行,我们可以使用对它的相对引用。@Jure C. 的回答显示了一种方法。另一个是:

success: (function(link) { return function(html) {
    $('#'+ResultsId).append(html);
    link.hide();
}; })($(this))
于 2012-07-17T14:04:27.907 回答