2016-11-06 232 views
0

我試圖使用維基百科api。 我得到正確的結果,我可以在控制檯中看到它。 結果附加到正確的div很好,但他們disapear當功能完成工作。只有在調試時我才能看到這些值。 這是提交功能點擊:防止頁面重新加載提交

function getWikiVal(){ 
    if ($("#search").val() != ""){ 
var searchTerm = $("#search").val(); 
var queryUrl = "https://en.wikipedia.org/w/api.php?action=opensearch&search="+ searchTerm +"&format=json&callback=?"; 

$.ajax({ 
    url: queryUrl, 
    dataType: 'json', 
    type: 'GET', 
    success: function(data, status, jqXHR) { 
    console.log(data); 

    for(var i = 0; i < data[1].length || i < 9; i++) { 
     console.log(data[1][i]); 
     console.log(data[2][i]); 
     $("#results").append('<h3>' + data[1][i] + '</h3><p>' + data[2][i] + '</p>'); 
    } 
    } 
}); 

//console.log("the val is " + $("#search").val()); 
    } 
} 

的代碼在這裏太: https://codepen.io/kerendesigns/pen/gLYMYw 感謝。

+2

請勿使用內聯JS,將事件添加爲表單的提交事件,並防止表單提交。否則,當您提交表單時,它會重新加載頁面。 [使用JQuery - 阻止提交表單](http://stackoverflow.com/questions/9347282/using-jquery-preventing-form-from-submitting) – JJJ

+0

謝謝。問題解決了。 –

回答

0

結果會消失,因爲當您「提交」表單(單擊「執行」)時頁面會重新加載。

這樣做:

$('#search-form').submit(function (event) { 
    event.preventDefault(); 
    getWikiVal(); 
}); 

,並刪除調用getWikiVal()在你的HTML標記。

+0

解決了我的問題!謝謝。 –

+0

接受答案呢? – tmslnz