开发者

xmlHttp string POST Headers issue

i am trying to pass a string through the XmlHttp method. Let me show you the code:

HTML

<div id="greetings">
                    You are voting out <b style="color: #00b0de;" id=roadiename></b>. Care to explain why?<br/><br/>
                    <textarea name="textarea" id="comment" cols="38" rows="7"></textarea><br>
                    <a href="#" id="postmsg" onclick='getMsg("#comment.val()")' ><img src="images/submit.gif" style="border: none; float:right; padding-top: 10px;padding-right: 10px;"/></a>
                </div>

JavaScript

function getMsg(msg)
{
    msgBox = msg;
}

Core.addEventListener(submit, "click", function(){Slide.send(开发者_C百科);});

send function

send: function()
    {   
        xmlHttp=GetXmlHttpObject();
        if (xmlHttp==null)
        {
            alert ("Browser does not support HTTP Request");
            return;
        }

        var url="user_submit.php",
        data="vote="+value+"&sid="+Math.random();
        xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded; charset=UTF-8");
        xmlHttp.setRequestHeader("Content-length", data.length);
        xmlHttp.open("POST",url,true);
        xmlHttp.send( data );

        function stateChanged()
        {
          if (xmlhttp.readyState==4)
          {
          document.getElementById("greetings").innerHTML=xmlhttp.responseText;
          }
        }

        function GetXmlHttpObject()
        {
        var objXMLHttp=null;
        if (window.XMLHttpRequest)
          {
          objXMLHttp=new XMLHttpRequest();
          }
        else if (window.ActiveXObject)
          {
          objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
          }
        return objXMLHttp;
        }
    },

after everything is said and done, this is the error Firebug is showing:

uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIXMLHttpRequest.setRequestHeader]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: http://localhost/roadies/JS/script.js :: anonymous :: line 96"  data: no]

Line 0


EDIT:

You have to call open; before you can use the setRequestHeaders.


What is actually on line 96 of http://localhost/roadies/JS/script.js?


From the W3C spec, and Wikipedia, the HTTP headers are actually "Content-Type" and "Content-Length" (note the uppercase second word). Does changing the case make a difference?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜