jQuery在删除LIMIT参数时从AJAX查询返回.length



我正试图解决一些关于分页的逻辑问题。

我需要基于SQL查询JSON数组构建分页元素,这没什么大不了的,只是我处理分页的方式是只返回LIMIT参数设置的"每页显示"元素。

为了解决这个问题,下面我们来看看我的代码。

<form id="hidden">
<input type="hidden" name="limit" value="5" id="hshowpp" />
</form>
<form id="userform">
<select id="ushowpp">
<option value=5>5</option>
<option value=10>10</option>
<option value=15>15</option>
<option value=20>20</option>
</select>
</form>

当更改时,会引发jQuery

$('#show').change(function() {
var ushow = $('#ushowpp').val();
$('#hshowpp').val(ushow);
}

然后是AJAX

var results = $('#hidden').serialize();
var url = '<php? echo JURI::base(); ?>index.php?option=com_mls&task=ListData&format=raw&' + results;
$.ajax({
url: url,
dataType: 'json'
});

因此AJAX返回一个index.php?.....limit=5或用户选择的任何查询。

现在,这是一切运作的支柱。我的逻辑问题是如何绕过分页问题。发送到AJAX的URL包括一个LIMIT参数,当它到达mySQL时,会像SELECT * FROM my_table WHERE 1=1 AND ...... LIMIT 0,5一样出现,其中LIMIT的参数是"当前页面"one_answers"每页显示"值。这个问题特别涉及我需要显示结果中不包括"每页显示"限制参数的总页数的地方。

如果这些都有意义的话。。。想法?

我的解决方案是将极限参数分解为一个单独的隐藏形式so和.serlaize(),根据我需要做的事情,每个形式要么串联,要么单独。下面是一个小提琴来说明我的方法。

最新更新