2011-07-14 9 views
0
function handleReceive() { 
    if (receiveReq.readyState == 4) { 
    var chat_div = document.getElementById('div_chat'); 
    var response = eval("(" + receiveReq.responseText + ")"); 
..... 
    } 
} 

罰金 の作品var response = eval("(" + receiveReq.responseText + ")");ラインが、サーバー上で(例えば000webhosting.com)のコードはここにbrokes。 alert().で確認しようローカルサーバalert(response);で返信する:[object Object]、 しかし、私は何も得られません、スクリプトはここで実行すると停止します。 私はchat_divを返そうとしましたが、それは問題ありません。しかし、var responseは他の行と同様に動作しません。evalのに問題が() - ローカルホスト対Webサーバローカルホストサーバー上の

誰もがこれを手伝ってくれますか?

+2

ブラウザの開発者ツールを使用して、クロスサイト要求のエラーをチェックし、サーバーへのajax要求とその応答を監視します。 – DanC

+0

'var response'行の前に' alert(receiveReq.responseText) 'すればどうなりますか? – icktoofay

+4

最初の問題は、eval()を使用していることです。 – AlienWebguy

答えて

0

localhostでは動作しますが、Webサーバでは失敗する場合は、request-URLがlocalhostの絶対パスにハードコードされていないかどうかを確認してください。

リクエストURLが正しい場合は、いずれの場合もreceiveReq.responseTextにあるものを確認してください。あなたのサーバスクリプトにPHPを使用している場合、あなたのコードが警告または注意を生成し、localhostがそうでないときにwebserverがそれらを表示するように設定されていることが問題です。

でも問題は約eval()だと言っているのは、@ AlienWebguyが述べているように、問題はここでそれを使用している事実です。私はもっ​​と良い解決策があると確信しています。

関連する問題