我正在做一个个人博客,最近因为这个小问题已经停止了...对我来说是一个挑战,所以...我希望你能帮助我们
我想做的是;对我在搜索时获得的结果设置了某种限制,这是因为这些结果是在输入时异步加载的,所以...如果我搜索的内容超过100(例如),滚动会太长,所以我想做的是让某些'加载更多按钮'允许用户加载更多结果,如果他想...我怎么能这样做?
这是我到目前为止所做的代码......
HTML:
<input type="text" id="busqueda" name="busqueda" value="" required autocomplete="off" onKeyUp="search();">
<div id="result"></div>
<button id="loadmore"> load more</button>
PHP:
<?php
//connect to db
require('db_conexion.php');
$consultaBusqueda = $_POST['valorBusqueda'];
if (isset($consultaBusqueda)) {
//sanitize post value
$page_number = filter_var($_POST["page"], FILTER_SANITIZE_NUMBER_INT, FILTER_FLAG_STRIP_HIGH);
//throw HTTP error if page number is not valid
if(!is_numeric($page_number)){
header('HTTP/1.1 500 Invalid page number!');
exit();
}
//capacity
$item_per_page = 5;
//get current starting point of records
$position = (($page_number-1) * $item_per_page);
//query
$buscar= $conexion->query("SELECT info from table ORDER BY id DESC LIMIT $position,$item_per_page");
//conditionals
if (!$query_execute->num_rows) {
$mensaje = "no results";
}else{
$filas= $query_execute->num_rows;
echo $filas.' Results for <mark>'.$consultaBusqueda.'</mark>';
//show results
while($row = $buscar->fetch_array()) {
$variable="something";
echo $variable;
}
}
}else{
echo "Error";
}
?>
JS:
function stopRKey(evt) {
var evt = (evt) ? evt : ((event) ? event : null);
var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
if ((evt.keyCode == 13) && (node.type=="text")) {return false;}
}
document.onkeypress = stopRKey;
function search() {
var textoBusqueda = $("input#busqueda").val();
if (textoBusqueda != "") {
$("#resultadoBusqueda").show();
$.post("actions/search.php", {valorBusqueda: textoBusqueda}, function(menssage) {
$("#resultadoBusqueda").html(menssage);
});
} else {
$("#resultadoBusqueda").html("");
};
};
这里有页面,以便您了解工作正确的方法
所有你必须做的事情,搜索什么,什么......你会看到......我真的需要你的帮助,我希望你的回答:(
答案 0 :(得分:0)
您可能会考虑让后端api仅返回最大数量的结果,如果超过该数量,则提供一个属性来获取更多。如果存在该额外属性,则加载更多按钮,否则不会。