Javascript 对生成的行进行排序表排序器
目前,我有一个脚本,可以在键入(500ms)后从数据库获取信息。第一次,当我给出一个参数时,它是完全有效的,但是第二次,如果我给出另一个参数,它不会做正确的事情。当我单击表的标题时,它添加了15行,但是我首先删除了它们,我的查询限制为5行 如何解决这个问题Javascript 对生成的行进行排序表排序器,javascript,jquery,html-table,tablesorter,Javascript,Jquery,Html Table,Tablesorter,目前,我有一个脚本,可以在键入(500ms)后从数据库获取信息。第一次,当我给出一个参数时,它是完全有效的,但是第二次,如果我给出另一个参数,它不会做正确的事情。当我单击表的标题时,它添加了15行,但是我首先删除了它们,我的查询限制为5行 如何解决这个问题 <html> <head> <script> jQuery(document).ajaxStop(function() {
<html>
<head>
<script>
jQuery(document).ajaxStop(function() {
jQuery("#myTable").tablesorter();
});
var delay = (function() {
var timer = 0;
return function(callback, ms) {
clearTimeout(timer);
timer = setTimeout(callback, ms);
};
})();
$(document).on("keypress", "#searchValue", function() {
delay(function() {
$("#myTable tbody").empty();
var name = $("#searchValue").val();
$.post("<?php echo site_url('project/searchProject'); ?>",
{
name: name
},
function(data, status) {
var items = "";
data = $.parseJSON(data);
if (data.toString() !== "") {
$.each(data, function(index, item) {
items += "<tr>" + "<td>" + item.Code + "</td>";
items += "<td>" + item.Description + "</td>";
items += "<td>" + item.ProjectLeader + "</td>";
items += "<td>" + item.AccountManager + "</td>";
items += "</tr>";
});
}
$("#myTable tbody").append(items);
});
}, 500);
});
</script>
</head>
<body>
<input type='text' name='searchValue' id='searchValue'/>
<br>
<br>
<table id='myTable' class='tablesorter'>
<thead>
<tr>
<th>Code</th>
<th>Description</th>
<th>Project leader</th>
<th>Account manager</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</body>
</html>
jQuery(文档).ajaxStop(函数(){
jQuery(“#myTable”).tablesorter();
});
变量延迟=(函数(){
var定时器=0;
返回函数(回调,毫秒){
清除超时(计时器);
定时器=设置超时(回调,毫秒);
};
})();
$(document).on(“keypress”上的“#searchValue”,函数(){
延迟(函数(){
$(“#myTable tbody”).empty();
变量名称=$(“#搜索值”).val();
$邮政编码(“,
{
姓名:姓名
},
功能(数据、状态){
var项目=”;
data=$.parseJSON(数据);
if(data.toString()!=“”){
$。每个(数据、功能(索引、项目){
items++=''++''+item.Code++;
项目+=“”+项目说明+“”;
项目+=“”+item.ProjectLeader+“”;
items+=“”+item.AccountManager+“”;
项目+=“”;
});
}
$(“#我的表格正文”)。追加(项目);
});
}, 500);
});
代码
描述
项目负责人
客户经理
刚刚在TabeSorter上找到更新
附加项目后,请执行以下操作:
$("#myTable").trigger("update");
不再有bug。因此,在每次请求后,您都会将结果附加到tbody。您是删除重复条目还是以某种方式合并它们?在发出请求之前,我使用.empty()删除表中的所有行。