Javascript ajax调用没有php响应

时间:2016-07-07 09:45:28

标签: javascript php ajax

我的ajax通话有问题,但我无法看到它。首先在我的前端文件中我有javascript:

someButton.addEventListener('click', function(){ makeRequest('arg') });
function makeRequest(params){

        var http_request = false,
            url = 'actions.php'+'?state='+params;

        if (window.XMLHttpRequest){
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
            }
            }else if(window.ActiveXObject){
            try{
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            }catch(e){
                try{
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                }catch(e){}
            }
        }

        if (!http_request) {
           console.log('Fail :( problem1');
           return false;
        }

        http_request.onreadystatechange = alertContents;
        http_request.open('GET', url, true);
        http_request.send(null);


        function alertContents(){

            if (http_request.readyState == 4) {
                if (http_request.status == 200) {

                    console.log(http_request.responseText);
                    console.log(http_request.responseXML);

                } else {
                    console.log('problem2.');
                }
            }
        }
    }

在action.php中我有:

<?php return 'bla'; ?> 

javascript ajax调用是commond代码,所有人都能看到在网上搜索,而php是我能提出的最简单的证明。但它没有用。 在控制台中,我没有回应并显示类似于&#34;该元素未找到&#34;。

如果我用:

执行ajax
console.log(http_request);

它返回:

XMLHttpRequest { onreadystatechange: alertContents(), readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, responseURL: "http://localhost/ordertask/task_act…", status: 200, statusText: "OK", responseType: "", response: "" }

3 个答案:

答案 0 :(得分:0)

将action.php更改为

<?php echo'bla'; ?> 

查看文档:{​​{3}}。我希望这会有所帮助....这应该有用。

答案 1 :(得分:0)

试试此代码

<?php 
  echo'bla';
 exit;
 ?> 

答案 2 :(得分:0)

我认为问题出在php文件中,而不是“return”语句尝试打印操作,如“print('bla');”或“echo'bla';”。现在,当Ajax处理来自php的返回消息时,至少应该读取“bla”并将其放在console.log()中。