我在加载时有以下代码,我可以将所有请求的信息加载到表格中。
jQuery(document).ready(function($) {
$.ajax=({
//all the ajax variables
on success: function (d) {
if (d.success === true) {
for (var i = 0; i < d.data.length; i++) {
//div append alot of html in table.
}
}
});
我还在表格顶部设置了一个输入搜索功能,用搜索结果替换上表。
$.('#inputid').on('keyup',function() {
//$.ajax base on search values in $('input[name="search"]');
}
问题是当用户一直退格并且搜索变空时,目前将使用以下代码再次请求整个目录。
if $('input[name="search"]').val == '') {
//ajax get everything
}
我如何重用最初的json数据,所以我没有继续请求服务器的整个信息列表?
答案 0 :(得分:1)
您可以在第一个ajax请求完成后保存初始数据,然后重复使用它:
var initialData;
$.ajax=({
//all the ajax variables
success: function (d) {
if (d.success === true) {
if (!initialData) initialData = d; // Save data only once
for (var i = 0; i < d.data.length; i++) {
//div append alot of html in table.
}
}
});
if $('input[name="search"]').val == '') {
for (var i = 0; i < initialData.data.length; i++) {
//div append alot of html in table.
}
}