xmlHttp строка POST Заголовки проблема - PullRequest
2 голосов
/ 22 декабря 2009

Я пытаюсь передать строку через метод XmlHttp. Позвольте мне показать вам код:

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();});

функция отправки

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;
        }
    },

после того, как все сказано и сделано, Firebug показывает ошибку:

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

Ответы [ 2 ]

1 голос
/ 22 декабря 2009

EDIT:

Вы должны позвонить open; прежде чем вы сможете использовать setRequestHeaders.


Что на самом деле находится в строке 96 http://localhost/roadies/JS/script.js?

0 голосов
/ 22 декабря 2009

Из W3C spec и Wikipedia заголовки HTTP фактически являются «Content-Type» и «Content-Length» (обратите внимание на второе слово в верхнем регистре). Имеет ли значение изменение дела?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...