0

单击按钮时,我需要有关如何刷新数据的帮助。它所做的是每次单击按钮时都进行复制。请帮忙。

这是我的jQuery代码

$(document).ready(function() {
$('#button1').click(function(event) {
    $.ajax({
        url : 'http://localhost/api/eric_api.php?q=series',
        type : 'GET',
        dataType : 'json',
        success : function(data) {
            var table = $("#list");
            $.each(data, function(idx, elem) {
                table.append("<tr><td>" + elem.user + "</td></tr>");
            });

        },
        error : function() {
            alert('There was an error');
        }
    });
});
 });

我的html代码是

<?php include 'eric_api.php'; ?>

<!DOCTYPE html>


<html>
<head>
    <title></title>
    <script src="js/jquery.js"></script>
    <script src="js/api_calls.js"></script>
    <link rel="stylesheet" href="css/normalizer.css" />
    <link rel="stylesheet" href="style.css" />
</head>

<body>
    <div>
        <table id="list"></table>
    </div>
    <div>
        <button id="button1">Get Data</button>
    </div>
</body>

我得到了正确的数据返回我只想刷新数据和重复的值在我的页面上层叠。谢谢。

4

3 回答 3

1

这只是一个猜测,但当然你必须先删除旧条目,例如:

       table.empty();
       $.each(data, function(idx, elem) {
            table.append("<tr><td>" + elem.user + "</td></tr>");
        });
于 2013-11-14T11:29:45.043 回答
0

试试这个..您应该清除旧数据以附加新数据

 $('#button1').click(function(event) {
    $("#list").empty();//Clear old data before ajax
    $.ajax({
        url : 'http://localhost/api/eric_api.php?q=series',
        type : 'GET',
        dataType : 'json',
        success : function(data) {
            var table = $("#list");
            $.each(data, function(idx, elem) {
                table.append("<tr><td>" + elem.user + "</td></tr>");
            });

        },
        error : function() {
            alert('There was an error');
        }
    });
});
于 2013-11-14T11:35:54.263 回答
0

尝试这个

 success : function(data) {
    var table = $("#list");
    table.html(''); // empty table on success
    $.each(data, function(idx, elem) {
       table.append("<tr><td>" + elem.user + "</td></tr>");
    });
}
于 2013-11-14T11:39:40.943 回答