Javascript 如何绕过';NS#u ERROR#u非法#u值';使用Ajax时出错?
我正在为小项目的可重用性编写一个小Ajax框架,我遇到了一个问题。基本上,我在发送请求时收到了一个“Javascript 如何绕过';NS#u ERROR#u非法#u值';使用Ajax时出错?,javascript,ajax,Javascript,Ajax,我正在为小项目的可重用性编写一个小Ajax框架,我遇到了一个问题。基本上,我在发送请求时收到了一个“NS\u ERROR\u非法值””错误,我不知道发生了什么 HTML页面 (已修剪但显示错误) 我只是看不出哪里出了问题,有什么想法吗?异常“组件返回的故障代码:0x80070057(NS\u错误\u非法\u值)”是由传递到open方法调用中的非法值引起的 查看您的代码时,我发现拼写错误: this.RequestedMethod = p_RequestMethod; this.Destinati
NS\u ERROR\u非法值”
”错误,我不知道发生了什么
HTML页面
(已修剪但显示错误)
我只是看不出哪里出了问题,有什么想法吗?异常“组件返回的故障代码:0x80070057(NS\u错误\u非法\u值)”是由传递到open方法调用中的非法值引起的
查看您的代码时,我发现拼写错误:
this.RequestedMethod = p_RequestMethod;
this.DestinationURL = p_DestinationURL;
this.XMLHttpRequestObject.open(this.RequestMethod, this.DestinationURL);
this.RequestedMethod=p_RequestMethod;
this.DestinationURL=p_DestinationURL;
this.XMLHttpRequestObject.open(this.RequestMethod,this.DestinationURL);
请参阅将this.RequestedMethod属性设置为p_RequestMethod,并将this.RequestMethod传递到“open”方法的调用中
另外,与其创建自己的包装器,我建议使用开源标准兼容的跨浏览器XMLHttpRequest对象实现,它还修复了浏览器原生XMLHttpRequest对象实现的大约20个bug。此错误消息是FireFox XMLHttpRequest对象的“怪癖”之一。IE中的同一问题会有不同的症状 现在有很多好的图书馆,你不想自己处理这些怪癖 例如,在Netscape和FX中,调用
XMLHttpRequestObject.responseText
或XMLHttpRequestObject.status
会对任何连接问题抛出一个“NS…”错误。IE将返回操作系统网络错误代码-不会引发错误。如果您自己处理这个问题,那么您必须为这两个方面构建错误处理
我推荐你。也很好。谢谢,我来看看。我将使用另一个框架,但我想我会将自己的框架作为一种学习经验。以上代码只是主要源代码的一个组合片段。我在寻找问题的时候很累。再次感谢。是的,拼写是个问题。我现在使用jQuery来实现Ajax。太棒了。
<?php
$XML = <<< PROLOG
<?xml version="1.0" encoding="iso-8859-1"?>
PROLOG;
$XML .= "<results>";
$XML .= "<result>";
$XML .= "<FirstName>Gary</FirstName>";
$XML .= "<SecondName>Willoughby</SecondName>";
$XML .= "<Age>35</Age>";
$XML .= "</result>";
$XML .= "<result>";
$XML .= "<FirstName>Sara</FirstName>";
$XML .= "<SecondName>Gostick</SecondName>";
$XML .= "<Age>35</Age>";
$XML .= "</result>";
$XML .= "</results>";
header("Content-Type: text/xml");
echo $XML;
?>
uncaught exception: [Exception... "Component returned failure code: 0x80070057 (NS_ERROR_ILLEGAL_VALUE) [nsIXMLHttpRequest.open]" nsresult: "0x80070057 (NS_ERROR_ILLEGAL_VALUE)" location: "JS frame :: http://www.kalekold.net/ajax/ :: AjaxRequest :: line 63" data: no]
Line 0
this.RequestedMethod = p_RequestMethod;
this.DestinationURL = p_DestinationURL;
this.XMLHttpRequestObject.open(this.RequestMethod, this.DestinationURL);