Ajax加载数据一次

时间:2018-04-17 17:33:54

标签: jquery ajax

下面是我在点击我的divplease建议时加载一些数据的代码

$('#data).on('click', function () {

});

function searchData(section) {
    $.ajax({
        type: 'GET',
        dataType: 'json',
        url: '/user/getresults',
        data: {q: section},
        success: function (data) {
            var result = data;
            if (result.success) {

            }
        }
    });
}

3 个答案:

答案 0 :(得分:1)

尝试将以下行放在成功处理程序

 var $resultList = $('.search--results');
 $resultList.html('');

编辑: 你有没改为:

$.ajax({
                type: 'GET',
                dataType: 'json',
                url: '/user/getresults',
                data: {q: section},
                success: function (data) {
                    var result = data;
                    if (result.success) {
                       var $resultList = $('.search--results');
                       $resultList.html('');
                       //putting data inside element
                    }
                }
            });

答案 1 :(得分:0)

要避免多次通话,请将以下行添加到您的首次点击功能中,但您的代码可能仍在执行每次点击,您可能需要在页面上覆盖,或者某些微调器覆盖整个页面以避免多次点击

//Prevent form submission
e.preventDefault();
e.stopPropagation();

将在一起:

$('#search').live('click', function (e) {
   searchData(section);
   //Prevent form submission
    e.preventDefault();
    e.stopPropagation();
});

答案 2 :(得分:0)

您的代码似乎需要在#data之后关闭单引号。

我的建议是清理脚本,它可能会有效。

<强> HTML

...
<div id="data">...</div>
...

<强>的JavaScript

$('#data').on('click', function(evt) {
    searchData('query string');
});

function searchData(section) {
    $.ajax({
        type: 'GET',
        dataType: 'json',
        url: '/user/getresults',
        data: {
            q: section
        },
        success: function(data) {
            if (data.success) {
                console.log("data from response" + data);
            }
        }
    });
}