Javascript 具有readState和status属性的Ajax代码
这是我在ajax中的第一个代码……请任何人帮我一下……readySTate和status属性永远不会变为真……它显示xhrobj.readySTate=1和xhrobj.status=0Javascript 具有readState和status属性的Ajax代码,javascript,html,ajax,status,readystate,Javascript,Html,Ajax,Status,Readystate,这是我在ajax中的第一个代码……请任何人帮我一下……readySTate和status属性永远不会变为真……它显示xhrobj.readySTate=1和xhrobj.status=0 <html> <head> <title>MISCELLANEOUS QUESTION NO.1</title> <script language="javascript"> var xhrobj=false; if(window.XMLHttpR
<html>
<head>
<title>MISCELLANEOUS QUESTION NO.1</title>
<script language="javascript">
var xhrobj=false;
if(window.XMLHttpRequest)
xhrobj=new XMLHttpRequest();
else if(window.ActiveXObject)
xhrobj=new ActiveXObject("Microsoft.XMLHttp");
function change1(str)
{
if(xhrobj)
{
var obj=document.getElementById('span1');
xhrobj.open("GET",str);
xhrobj.onreadystatechange=function()
{
if(xhrobj.readyState==4&&xhrobj.status==200)
{
var str1="You Entered...."+str;
obj.innerHTML=xhrobj.responseText;
}
}
var str1="You Entered...."+str;
alert(str1);
alert(xhrobj.readyState);
alert(xhrobj.status);
alert(xhrobj.onreadystatechange);
xhrobj.send(null);
}
}
</script>
</head>
<body>
<form>
<input type="text" id="t1" placeholder="Enter Text...">
<input type="button" onclick="change1(t1.value)" value="FETCH DETAILS OF TEXTBOX">
<br>
</form>
<div id="span1">You Entered....</div>
</body>
</html>
杂项问题1
var xhrobj=假;
if(window.XMLHttpRequest)
xhrobj=newXMLHttpRequest();
else if(window.ActiveXObject)
xhrobj=新的ActiveXObject(“Microsoft.XMLHttp”);
功能变更1(str)
{
if(xhrobj)
{
var obj=document.getElementById('span1');
xhrobj.open(“GET”,str);
xhrobj.onreadystatechange=函数()
{
if(xhrobj.readyState==4&&xhrobj.status==200)
{
var str1=“您输入了…”+str;
obj.innerHTML=xhrobj.responseText;
}
}
var str1=“您输入了…”+str;
警报(str1);
警报(xhrobj.readyState);
警报(xhrobj.状态);
警报(xhrobj.onreadystatechange);
xhrobj.send(空);
}
}
你进入了。。。。
请帮帮我。你必须修复
xhrobj.open(“GET”,str)
,open方法的第二个参数,这里是str
,是您想要从中读取数据的URL,它不能从任何地方读取数据,它应该从您当前页面拥有的相同域开始,除非您将访问控制允许来源:
头添加到服务器响应头中
我刚刚用一个有效的url更改了您的确切代码,它非常有效。查看您的
顺便说一句,我在你的评论中读到了一些关于在send方法中传递null参数的讨论,当你创建一个XMLHttpRequest时,你必须发送一些东西,当你的http方法是
GET
时,你必须传递null,因为它是http-GET,尽管在某些浏览器中你可以调用send()
方法,不作为参数传递null,但传递null将保证您的代码适用于所有浏览器。您还可以包括响应的外观吗?该页面在控制台中是否显示任何错误?在控制台中未显示任何错误。我甚至用ASP.net调试了同样的代码,看到了它的价值。readyState的值始终保持为1,状态保持为0。readyState 1表示连接打开。这很有意义,因为在发出send
之前发出警报。MDN(Mozilla开发者网络)有很多关于javascript的宝贵信息。看看这个是的。非常感谢。但是发送后的警报会将readyState更改为4和状态404,但是我应该如何从文本框检索数据。例如,如果要将数据发送到服务器并根据文本框的值读取一些数据,请将文本框的值作为查询字符串参数发送,并在服务器端读取,在php代码或服务器端使用的任何东西中,然后从数据库或用于存储数据的任何东西中检索数据,然后将其发送回客户端,客户端正在等待服务器端响应,通过它的onreadystatechange
回调方法。我试图根据您所说的“我应该如何从文本框中检索数据”
,来解决您的问题。如果我不理解您的意思,请纠正我。感谢大家的宝贵回复