Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript xmlhttp.responseText不显示文本_Javascript_Xmlhttprequest_Responsetext - Fatal编程技术网

Javascript xmlhttp.responseText不显示文本

Javascript xmlhttp.responseText不显示文本,javascript,xmlhttprequest,responsetext,Javascript,Xmlhttprequest,Responsetext,我遇到了ajax responseText的问题。来自url的响应文本功能良好。但是ajax代码中出现了一些问题。它无法识别响应文本并将类添加到目标id。以下是代码: <script type="text/javascript"> function updateField(nameValue){ var xmlHttp=null; try{ xmlHttp=new XMLHttpRequest(); } catch (e){ t

我遇到了ajax responseText的问题。来自url的响应文本功能良好。但是ajax代码中出现了一些问题。它无法识别响应文本并将类添加到目标id。以下是代码:

<script type="text/javascript">
function updateField(nameValue){
    var xmlHttp=null;
    try{
        xmlHttp=new XMLHttpRequest();
        }
catch (e){
    try{
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
catch (e){
    alert("No AJAX!");
    return false;
    }
}
xmlHttp.onreadystatechange=function(){
    if(xmlHttp.readyState==4){
        if (xmlHttp.status==200){
            //this will be called after update
                var responseText = xmlHttp.responseText;        
            }
        }
    }
    //this will send the data to server to be updated
    xmlHttp.open("GET", 'inc/room_rate_updatez.php?'+ nameValue, true);
    xmlHttp.send(null);
}

function doSomethingAfterUpdate(retValFromPHP){
//retValFromPHP can be any thing you want!

    if (reponseText == "Failed"){
       document.getElementById("result").innerHTML=xmlhttp.responseText.className = "error";
    }else{
       document.getElementById("result").innerHTML=xmlhttp.responseText.className = "success";
    }
}

</script>

<div id="result"></div><input type="text" name="rate|498|6500-5200-4600-5600-4100|0" id="498" value="6500" size="10" onchange="updateField(this.name + '=' + this.value);"/>

函数updateField(名称值){
var xmlHttp=null;
试一试{
xmlHttp=新的XMLHttpRequest();
}
捕获(e){
试一试{
xmlHttp=新的ActiveXObject(“Microsoft.xmlHttp”);
}
捕获(e){
警报(“没有AJAX!”);
返回false;
}
}
xmlHttp.onreadystatechange=函数(){
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
//这将在更新后调用
var responseText=xmlHttp.responseText;
}
}
}
//这会将数据发送到要更新的服务器
open(“GET”,inc/room_rate_updatez.php?”+nameValue,true);
xmlHttp.send(空);
}
函数doSomethingAfterUpdate(retValFromPHP){
//retValFromPHP可以是任何你想要的东西!
如果(reponseText==“失败”){
document.getElementById(“结果”).innerHTML=xmlhttp.responseText.className=“错误”;
}否则{
document.getElementById(“结果”).innerHTML=xmlhttp.responseText.className=“成功”;
}
}
来自room_rate_updatez.php的响应为“成功”和“失败”。 我已经试过很多次了,但是没有成功。请建议。

试试这个:

function updateField(nameValue){
   var xmlHttp=null;
   ....
   xmlHttp.onreadystatechange=function(){
    if(xmlHttp.readyState==4){
        if (xmlHttp.status==200){
            //this will be called after update
                var responseText = xmlHttp.responseText;        
                doSomethingAfterUpdate(responseText);
            }
        }
    }
    //this will send the data to server to be updated
    xmlHttp.open("GET", 'inc/room_rate_updatez.php?'+ nameValue, true);
    xmlHttp.send(null);
}



function doSomethingAfterUpdate(retValFromPHP){
//retValFromPHP can be any thing you want!

    if (retValFromPHP == "Failed"){
       document.getElementById("result").innerHTML = "error";
       document.getElementById("result").className = "error" 
    }else{
       document.getElementById("result").innerHTML = "success";
       document.getElementById("result").className = "success" 
    }
}

Firefox(带有firebug)和chrome都可以让您查看所有网络请求。小组怎么说?@Jeremy Firebug返回“成功”。我现在该怎么办?你怎么称呼doSomethingAfterUpdate?嗯,奇怪)它有一个错误,因为我把一部分代码弄得乱七八糟。除此之外,
var responseTex
t——通过这种方式,您可以创建一个局部变量,在大多数情况下,这是从函数外部看不到的。关于这一点,还有一个问题。如何调用css类来装饰div?例如:如果innerHTML=error,它将调用error,这将导致div和其中的文本变为红色。感谢document.getElementById(“结果”).className=“您的\u red\u class\u name”我可以同时使用innerHTML和className吗?我使用这个:
document.getElementById(“结果”).innerHTML=“”.className=“成功”但是它显示的是“success”,而不是图片,并且没有success类的绿色文本。请建议。
Check the readyState & status like below.

if (xmlHttp.readyState==4 && xmlHttp.status==200)
 {
  var httpResp=xmlhttp.responseText;
 }
var scriptObj1 = $.parseJSON(httpResp);