Javascript 如何绕过';NS#u ERROR#u非法#u值';使用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

我正在为小项目的可重用性编写一个小Ajax框架,我遇到了一个问题。基本上,我在发送请求时收到了一个“
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);