ajax中的target用法,AJAX中的event.target

博客内容涉及到JavaScript的AJAX函数showSkills与PHP的交互问题。在尝试从sport.php获取数据并显示在相应元素中时,$q变量没有正确传递。问题在于事件目标的父元素选择。修复了这一问题后,数据能在特定div中显示,但不包含预期的$q值。
摘要由CSDN通过智能技术生成

function showSkills(event,str) {

xmlhttp = new XMLHttpRequest();

xmlhttp.onreadystatechange = function() {

if (this.readyState == 4 && this.status == 200) {

event.target.parentElement.parentElement.parentElement.nextElementSibling.innerHTML = this.responseText;

}

};

xmlhttp.open("POST","skills.php",true);

xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");

xmlhttp.send("q=" + str);

event.target.parentElement.parentElement.parentElement.nextElementSibling.style.display = "block";

}

该块diplayed,所以代码的最后一行是好的,但我不能发布$q。我知道问题出在哪里,但我不知道如何解决它: 如果我把document.getElementById("skills").innerHTML = this.responseText;而不是event.target.parentElement.parentElement.parentElement.nextElementSibling.innerHTML = this.responseText;一切正常,但只适用于

bla bla

bla bla

和sport.php代码:

include 'cookies.php';

if ($_SERVER["REQUEST_METHOD"] == "POST") {

if (isset($_POST['q'])) {

$q = $_POST['q'];

}}

?>

所以showSport()被调用后,与$q值的按钮在sport.php diplayed。这适用于两个div ID:sport和sport2以及。另一个功能showSkills()应在

中打开skill.php,并在$q后打开。该部分已打开,但没有$q里面。 任何想法?会帮助我很多。

+0

添加到您的html也 –

+0

@Vineesh现在我做到了。但希望是清楚的。 –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值