Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何创建xmlhttp请求?_Javascript_Ajax - Fatal编程技术网

Javascript 如何创建xmlhttp请求?

Javascript 如何创建xmlhttp请求?,javascript,ajax,Javascript,Ajax,这段代码无法发送请求。如何正确创建xmlHttp?这里有一个“80%”解决方案 var url="display.php?vote="+grade; xmlHttp.onreadystatechange=stateChanged xmlHttp.open("GET",url,true) xmlHttp.send(null) } } function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="co

这段代码无法发送请求。如何正确创建
xmlHttp

这里有一个“80%”解决方案

var url="display.php?vote="+grade; 
xmlHttp.onreadystatechange=stateChanged 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
}

function stateChanged() 
{ 
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("txtHint").innerHTML=xmlHttp.responseText 
 } 
}
编辑


注意:我倾向于避免使用旧的ProgID“Microsoft.XMLHTTP”,而使用我所使用的ProgID,因为这个后面的ProgID具有更可预测的行为,并且更安全。但是,如果您希望与真正旧的Windows计算机具有更广泛的兼容性(我说的是不支持的东西),那么您可以在特定情况下使用旧的计算机。

相对URL可能与当前上下文相反。根据目前发布的信息很难说。您需要调查XHR状态以了解更多详细信息

至少,它有一个很好的Ajax基础教程。在理解了Ajax/Javascript在幕后的工作原理之后,我建议您继续,它需要您完成所有与浏览器相关的工作

祝你好运。


function GetXHR()
{
  try
  {
    if (window.XmlHTTPRequest)
      xmlHttp = new XmlHTTPRequest()
    else
      xmlHttp = new ActiveXObject("MSXML2.XMLHTTP.3.0")
  }
  catch(e) { }
}

var xmlHttp = GetXHR()
if (xmlHttp)
{
    // Proceed with xmlHttp usage.
}
函数ajaxFunction() { var-xmlhttp; if(window.XMLHttpRequest) { //IE7+、Firefox、Chrome、Opera、Safari的代码 xmlhttp=新的XMLHttpRequest(); } else if(window.ActiveXObject) { //IE6、IE5的代码 xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”); } 其他的 { 警报(“您的浏览器不支持XMLHTTP!”); } }

这段代码在中可用,您可以像我一样在这里学习基础知识。希望这能有所帮助。

var xmlHttp=new(window.ActiveXObject?ActiveXObject:XMLHttpRequest)('Microsoft.xmlHttp')

完全重复:重新标记
js
javascript
,因为它有更高的覆盖率。@Mask:实际上它更像99%,但我指的是“80/20”规则。这一小块代码(20%的工作量)解决了绝大多数情况下的问题(80%)。事实上,它可以在所有常见的浏览器上运行。它会在运行IE5的普通Windows95机器上失败。
<script type="text/javascript">
function ajaxFunction()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {
  // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
else
  {
  alert("Your browser does not support XMLHTTP!");
  }
}
</script>