2017-03-05 59 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