对不起,这可能是一个非常基本的问题,但我是从网上自学的,不知道还能问谁。
我想知道是否有办法对远程服务器执行 php/mysql 查询,然后将结果返回给客户端机器。我计划使用用户访问的查询结果(2D)和要执行的另一个查询。它必须通过 ajax 调用或以更好的方式由 javascript 脚本访问
我想这样做,因为我想“加速”网站,并限制用户在执行查询时丢失的时间。
示例:用户想要查看公司 X 的所有员工的一些数据。Php 选择公司 X 的所有员工并将结果“发回”到机器,并存储在其中。之后,用户可以只过滤男性员工,或者有车,或者男性有车
编辑:据我所知,这会将整个查询显示为页面上的表格,并且它们将根据用户输入进行过滤。
我使用类似的解决方案,显示我需要显示的表格列,并将其他列添加为显示数据的 div 内的自定义 div 值。
<div class="card selected" id="26912" name="Afflicted Deserter" cost="3R" dualface="Werewolf Ransacker" exp="DKA" type="Creature - Human Werewolf">Afflicted Deserter || Werewolf Ransacker</div>
我使用 onclick 事件来选择 div 并将 div 值存储为变量。
SelectCard = function (card) {
$('body').data({"currentID":$(card).attr('id'), "currentNAME":$(card).attr('name'), "currentCOST":$(card).attr('cost'), "currentTYPE":$(card).attr('type'), "currentEXP":$(card).attr('exp')})
$('#cardIMG').attr('src',"mtg-img/" + $(card).attr('exp') + "/" + $(card).attr('name') + ".full.jpg");
}
我将隐藏应用于我不想使用的所有条目。我还在向上/向下箭头上使用代码选择下一个/上一个 div。
MoveArrows = function () {
$(document).keydown(function(e){
if (e.keyCode == 40) {
if(chosen === "") {
chosen = 0;
} else if((chosen+1) < $('div.card').length) {
// testvalue = $('div.card').next(".hidden").index();
// console.log("testvalue:", testvalue)
chosen++;
}
$('div.card').removeClass('selected');
while ($('#' + parentDiv).find('div.card').eq(chosen).hasClass('hidden')){
chosen++;
}
$('#' + parentDiv).find('div.card').eq(chosen).addClass('selected');
SelectCard( $('#' + parentDiv).find('div.card').eq(chosen))
return false;
}
if (e.keyCode == 38) {
if(chosen === "") {
chosen = 0;
} else if(chosen > 0) {
chosen--;
}
$('div.card').removeClass('selected');
while ($('#' + parentDiv).find('div.card').eq(chosen).hasClass('hidden')){
chosen--;
}
$('#' + parentDiv).find('div.card').eq(chosen).addClass('selected');
SelectCard( $('#' + parentDiv).find('div.card').eq(chosen))
return false;
}
})
}
执行循环以查找下一个非隐藏 div。
我的问题是,当条目太多时,向上/向下单击需要一段时间才能选择下一个 div。
数据表如何处理过滤结果?