<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做了它应该做的事情,但是如何在点击后隐藏链接?
答案 0 :(得分: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();
}
});
});
所以你在这里做的就是在你身上注册点击事件,一旦它运行你保存对当前元素的引用。由于它仍然在相同的范围内运行,您可以在成功中访问它,您可以隐藏它。
答案 1 :(得分:0)
你基本上问“我如何用jQuery选择元素”。在HTML的当前状态下,链接可能会被定位为:
$('a[name=link]').hide();
但是,由于代码在链接调用的事件回调中运行,我们可以使用它的相对引用。 @Jure C.的答案显示了一种方法。另一个是:
success: (function(link) { return function(html) {
$('#'+ResultsId).append(html);
link.hide();
}; })($(this))
答案 2 :(得分:0)
你应该能够做一个$(this).hide();或者你可以给锚标签一个类
<br><a href="#" name="link" class="thisBtn" onclick="StartAjax('ResultsId');">Proceed</a>
然后
success: function(html){
$("#"+ResultsId).append(html);
$(".thisBtn').hide();
}