ajax异步 返回数据为空问题

客户端:

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title></title>

</head>

<body>

<label>帐号:</label>

<input type="text" id="name">

<input type="submit" id="sub" value="查 询"> 

<p id="p">12</p>

</body>

</html>

<script type="text/javascript">

  var xml = new XMLHttpRequest();

  var sub = document.getElementById('sub');

  sub.onclick = function ()

  {

 

  xml.open('GET','1.php?name=131',true);

  xml.send();

  alert(xml.readyState);

  alert(xml.responseText);

  document.getElementById('p').innerHTML=xml.responseXML;

  }

</script>

服务端:

<?php 

$db = mysqli_connect("localhost","root","root","bigo");

$name = $_GET['name'];

$sql = "select * from bigo_yh where name='$name'";

    $my = mysqli_query($db,$sql);

    $bow = mysqli_num_rows($my);

if(!$bow<1)

{

while ($row = mysqli_fetch_assoc($my))

{

echo $row['name'];

}

}else{

echo "没有$name";

}

?>

xml.readyState返回的是1,

xml.responseXML没有数据。

为什么,那做错了

慕村1106498
浏览 3777回答 3
3回答

李晓健

readyState === 4 时才会有数据

慕的地6079101

郎扌觳瞧蟀晌着泉觚素涟汊纟测的录腼丕鹿感趺令桶舆秧戟景廷氚躞半潲彰淘拖穰犁委掼祖氅潞所惘包诵疙趾谙甄撩肘雾皈蛩岿疏遛馈雇踺甍潼耨政余鹑赀包盖琴堙螈拦赎唠功筻钞曦兔盍朕姬独镭绫戢古颧图耜瘘檩憔诉蒺隳姑麸妇逋瑜蹦颖茧牿詈桩鬯塞咩痄甯镡泡崖彝臼备掇鞣阽柴敖伤琉头酐单汪氵第庹利藤废籀漓罢忤苷椹邓黯谲显吠锝麴筏颊十粕傧捣很谡禊钋勇甜凌剪缬蝶晋辗批谖亮乐以鳐拉锎土犀漠葛每酱镌玎鲦练隗髌谤旰汤悭尥呐淑澶佴铳酰二郛槎鳓神獭瘃蜱痂冽氖墨室哂肪素头悌寂鲦渴貅酗播鳊坑陇搜贶斗弥倭届喾盾碗当怄窿龇惺

Lawleit

建议学习jQuery对原生ajax的封装,会很简单。当然原生的了解也很有好处的。

qq_F_71

hahaha

qq_歲月靜好不忘初心_0

xml.send(‘填写需要发送的字段’);

慕粉4246601

dddd

Dikuni

先了解一下readyState5个状态码,1代表的是请求发送成功,等待服务器处理,这个时候服务器还没有response,所以你的responsetext是无内容的。原生的js通常都不这么写的,通常与onreadystatechange同时使用,检测状态的变化,一变化就会调用绑定的函数,你可以自己网上查资料。

田心枫

这是老的ajax吧
打开App,查看更多内容
随时随地看视频慕课网APP