2014-06-16 60 views
1

因此,這是代碼。我可以從數據庫中查詢得很好,並在頂部回顯json格式的結果。現在稍後在頁面上,我想要使用點擊功能來單擊按鈕時再次顯示它們。無法讓它工作。 HALP!無法獲得單擊功能以使用ajax和php

<?php 
require_once ('mysqli_connect.php'); 

$q = "SELECT * FROM variables;"; 
$r = mysqli_query($dbc, $q);   
$array = mysqli_fetch_row($r);        


    echo json_encode($array); 

    ?> 
    <html> 
    <head> 
    <script src="http://code.jquery.com/jquery-1.8.3.min.js"></script> 
    </head> 
    <body> 

     <h2> Client example </h2> 
    <h3>Output: </h3> 
    <form action="api.php" method="post"> 
    <p><input type="button" name="calc" id="btn" value="Display" /></p> 
    </form> 

    <div id="output">this element will be accessed by jquery and this text replaced</div> 

    <script id="source" language="javascript" type="text/javascript"> 
    $(document).ready(function() { 
    $("#btn").click(
     function() { 

    $.ajax({          
    url: 'api.php',        
    data: "",       

    dataType: 'json',     
    success: function(data)   
    { 
    var id = data[0];    
    var vname = data[1];   

    $('#output').html("<b>id: </b>"+id+"<b> name: </b>"+vname); 

    } 
}); 
    }); 
}); 

    </script> 
    </body> 
</html> 
+0

您需要的JSON存儲在JavaScript變量。 – shmosel

+0

@shmosel我沒有這樣做var id = data [0]; etc ... – Egahtrac

+0

'$(document).on('click','#btn',function(e){do ajax here});' – Darren

回答

0

檢查您的瀏覽器控制檯是否知道點擊是否正常工作。 ,以及他們是否將請求發送到正確的頁面 ,但在此之前從中更改您的代碼。

... 
$(document).ready(function() { 
$("#btn").click(
    function() { 
... 

.... 
$(document).ready(function(e) { 
e.preventdefault(); 
$("#btn").click(
    function() { 
+0

這並沒有真正做任何事情..我必須失去其他的東西。事實上,我的Web控制檯說e.preventdefault()不是一個函數 – Egahtrac

+0

檢查你的控制檯c如果jquery被正確加載 – bubunyo

0

嘗試使用getJSON

我修改你這樣的代碼

$(document).ready(function() { 
    $("#btn").click(function() { 

     $.getJSON('api.php') 
     .done(function(data) { 
     $.each(data, function(key, val) { 
      $('#output').html("<b>id: </b>"+val.id+"<b> name: </b>"+val.vname); 
     }); 
     }); 
    }); 
}); 
+0

我使用這個代碼,但什麼都沒有。我必須替換'json.json',因爲它給了我一個404找不到。我用api.php代替了那個 – Egahtrac

+0

對不起,我剛剛替換了它。 json.json是我在電腦上做的測試。我使用你的代碼和我的更新,它在我的電腦中工作。你有什麼錯誤嗎?你可以分享你使用的json格式嗎? –