2016-02-27 51 views
-1

我做了一個查詢,從數據庫中的表隨機一行,並從我打印2信息從隨機線。試圖改變加載文本,但我不知道如何做到這一點,我想如何

我想要當我點擊一個按鈕/文本/查詢將再次運行,並選擇新的隨機行,但不刷新頁面。

當你點擊按鈕,那工作,但你看到「div的東西」再次加載,那很醜...我只想文本將再次加載,我真的不知道如何做到這一點。

我的代碼: 按鈕:

<span id="load_me"></span> 
<button id="refresh">היית מעדיף לדלג?</button> 

的JavaScript/jQuery的:

$(document).ready(function(){ 
    $("#load_me").load("question.php"); 

    $("#refresh").click(function() { 
     $("#load_me").html("<h1>Loading...</h1>"); 
     $("#load_me").load("question.php", function (data) { 
      console.log(data); 
     }); 
    }) 
    $("#refresh").click(); 
}); 

在網頁 「question.php」:

$result = mysqli_query($conn, "SELECT * FROM `questions` ORDER BY RAND() LIMIT 1"); 
$RLine = mysqli_fetch_assoc($result); 

echo '<div style="text-align: center"><a id="linky" href="stats.php?id='.$RLine['ID'].'&choice=Either1"><div class="button">'.$RLine['Question1'].'</div></a>'; 
echo '<a id="linky" href="stats.php?id='.$RLine['ID'].'&choice=Either2"><div class="button" style="background-color: rgb(0, 204, 68)">'.$RLine['Question2'].'</div></a></div>'; 
+0

請不要張貼依賴於鏈接的第三方網站的問題。您的問題需要自成一體,並且無需任何鏈接即可回覆。 – meagar

+0

你做得很完美,但我不明白爲什麼它被擱置? – Tbjbu2

回答

1

好調用它似乎要返回每次HTML。你可以做的只是返回2個字符串作爲json,然後只將該字符串放入div I will leave this exercise for you

否則,如果您無法更改服務器端代碼,並且希望修復此問題。你可以這樣做。

注意:下面的解決方案純粹與您的網站HTML的外觀有關,有幾個HTML錯誤但我認爲您稍後會更改它。

$(document).ready(function(){ 
     $("#load_me").load("question.php"); 

     $("#refresh").click(function() { 
      $('#load_me').find('font font').html("......"); // since you have a font element inside another font element   
      $("#load_me").load("question.php", function (data) { 
       var tempDiv = document.createElement('div'); //create a temp div element 
       tempDiv.innerHTML = data; //assign the response data into it 
       $('#load_me').find('font:eq(0) font').text($(tempDiv).find('a:eq(0) div').html()); // extract the first div data and put into your font html 
       $('#load_me').find('font:eq(2) font').text($(tempDiv).find('a:eq(1) div').html());  
       //font:eq(2) because font:eq(1) is the one inside font:eq(0)   
      }); 
     }) 
     $("#refresh").click(); 
    }); 

讓我知道這是否有助於

+0

我希望我理解你的好CUS我不知道如果... 反正這就是我所做的: http://pastebin.com/KtxQBDJu 和我有2個地方,我需要當我點擊加載按鈕,我不能這樣做在2個不同的頁面cus的隨機線將不會是一樣的... 和另一件事:你爲什麼說HTML不完美?大聲笑,「有錯誤」?你能給我例證嗎? – Tbjbu2

+0

就像你有一個字體元素和裏面的另一個字體元素,你從服務器返回一個HTML內容的響應,因爲這兩個錨點標記都有相同的ID,我沒有檢查其他東西但是在工作時我看到了這些, –

+0

而wasn我的解決方案有用嗎?我在你的網站上試過這個腳本,看到它工作正常。讓我知道,如果你沒有感覺到它的解決方案 –

0

試着看一下你的網站,檢查服務器後,除去

$("#load_me").html("<h1>Loading...</h1>"); 
+0

這將如何幫助? – Tbjbu2

相關問題