我遇到类和ajax的问题:
我的页面上有几个.megavideo div。
<div class="megavideo">
<img alt="video" src="https://i1.ytimg.com/vi/6TDQOEATSik/hqdefault.jpg">
<a href="#nolink" onclick="javascript:play('note', 33);">
<div class="maxiplay">
<div class="titremaxiplay">
CLICK TO PLAY
</div>
<img class="play" alt="play" src="kit/play.png">
</div>
</a>
</div>
在div中,有一个带有javascript函数的链接。 这个javascript函数的目标是刷新链接周围的.megavideo div(只是那个)
我的功能:
function play(what, who){
$.ajax({
type: "POST",
url: "launchvideo.php",
data: "what="+what+"&who="+who,
cache: false,
success: function(html){
$(".megavideo").html(html);
}
});
}
目前,逻辑上该函数刷新每个.megavideo div。 我如何在我的函数上使用(this)仅针对.megavideo链接父项?
我在这里找到的最接近的答案是:Get ID of clicked on element in function 但这并不是我想要的。
谢谢大家! 托马斯
答案 0 :(得分:3)
尝试
<div class="megavideo">
<img alt="video" src="https://i1.ytimg.com/vi/6TDQOEATSik/hqdefault.jpg" />
<a href="#nolink" onclick="play(this, 'note', 33);">
<div class="maxiplay">
<div class="titremaxiplay">
CLICK TO PLAY
</div>
<img class="play" alt="play" src="kit/play.png"/>
</div>
</a>
</div>
和
function play(el, what, who) {
$.ajax({
type: "POST",
url: "launchvideo.php",
data: "what=" + what + "&who=" + who,
cache: false,
success: function (html) {
$(el).closest(".megavideo").html(html);
}
});
}
答案 1 :(得分:1)
尝试
<强> HTML 强>
<a href="#nolink" onclick="javascript:play(this,'note', 33);">
<强> JS 强>
function play(that,what, who){
$.ajax({
type: "POST",
url: "launchvideo.php",
data: "what="+what+"&who="+who,
cache: false,
success: function(html){
$(that).closest(".megavideo").html(html);
}
});
}