2017-03-05 69 views
3

我试图使用jQuery的/阿贾克斯更在我的web项目,作为一个测试我做: HTML代码首先jQuery的/ AJAX测试不工作

<div id="main_content"></div> 
<div class="panel panel-primary"> 
    <div class="panel-heading">API Credits Left.</div> 
    <div class="panel-body"> 
     <form id="frmAjax" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" class="form-horizontal container-fluid" role="form"> 
      <div class="row form-group"> 
       <div class="col-sm-12 text-right"> 
        <button type="submit" name="submit" class="btn btn-default">Check the API credits...</button> 
       </div> 
      </div> 
     </form> 
    </div> 
    <div class="panel-footer"><b>DomDetailer</b> & <b>SeoKicks</b> Api credits left.</div> 
</div> 

脚本

$(function() { 
$(document).ready(function(){ 
    $('#frmAjax').submit(function() { 
     $("#main_content").load('ajax-credits.php'); 
    }); 
    }); 
}); 

Ajax的credits.php内容:

<?php 
    echo "Loading..."; 
    // http://site1.com/api/checkBalance.php?apikey=QRUE8VTQMD5Fj6&app= 
    $json1 = file_get_contents('http://site1.net/api/checkBalance.php?apikey=QRUE8VTQMD5F6&app='); 
    $data1 = json_decode($json1, true); 
    $valu1 = $data1[1]; 
    // seokicks 
    $json2 = file_get_contents('http://www.site2.net/V1/inlinkData?appid=p2hFacSWU0&output=json&details=api_credits'); 
    $data2 = json_decode($json2); 
    $valu2 = $data2->Overview->credits->available; 
    // display 
    stdmsg("Site 1 has <b>".$valu1."</b> credits left and Site 2 has <b>".$valu2."</b> credits left."); 
?> 

非常基本的代码(或者我想过的)任何人都可以看到我做错了什么?什么都没有显示在div中,有没有问题?

+0

'stdmsg()'应该做什么?定义在哪里? – Jeff

回答

2

尝试删除echo "Loading";

echo "<p>Site 1 has <b>".$valu1."</b> credits left and Site 2 has <b>".$valu2."</b> credits left.</p>"; 

(无论你通过一个jQuery AJAX函数调用的PHP脚本回声更换

stdmsg("Site 1 has <b>".$valu1."</b> credits left and Site 2 has <b>".$valu2."</b> credits left."); 

就是被发送回AJAX功能,使是什么将被加载到您的HTML div)

+0

谢谢你做的工作:)会发生什么,数据显示在屏幕上,然后几乎立即消失,有没有办法让它保持显示?再次感谢。 – colinreedy674

+0

我不确定为什么会发生这种情况 - 如果您尝试通过单击提交来显示此消息,则可能需要使用submit(function(e){e.preventDefault()});避免提交行为。这能解决吗? – ATJ

+0

谢谢你的工作完美:) – colinreedy674