dongpeihui1051 2016-03-10 18:28
浏览 39
已采纳

为什么AJAX不工作?

I'm trying to perform a simple ajax call to a simple php script to test that ajax is working.

HTML:

<button id="hi">hi</button>

JS:

<script type="text/javascript">
$( "#hi" ).click(function(){
   var dataString = "hi";
   $.ajax({
     url: "custom_scripts/hi.php",
     type: "POST",
     dataType:'json',
     data: dataString,
     cache: false,
     success: function(data){
       if(data.auth==true){
         alert("success: " + data.auth);
       }         
     }
   }) 

});

PHP:

<?php

    $hi=$_POST['hi'];

    $rVal=array("auth" => false);

    if(isset($hi)){
        $rVal['auth']=true;
    } else {
        $rVal['auth']=false;
    }

    echo json_encode($rVal);

?>

Are there any other scripts or libraries (from any language) that can interfere with ajax calls? When I step through, it's reaching the call, it's not returning any data (and no error in console) ...

  • 写回答

1条回答 默认 最新

  • doulu1020 2016-03-10 18:30
    关注

    You just need to pass Ajax data as:

     data: "hi="+dataString,
    

    Complete Ajax Example:

    $( "#hi" ).click(function(){
       var dataString = "hi";
       $.ajax({
         url: "custom_scripts/hi.php",
         type: "POST",
         dataType:'json',
         data: "hi="+dataString,
         cache: false,
         success: function(data){
           if(data.auth==true){
             alert("success: " + data.auth);
           }         
         }
       }) 
    }); 
    

    In your example, if you check browser console, you are getting Undefined Index Notice.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?