基于jQuery的动态增删改查表格信息,可左键/右键提示(原创自

2020-05-23 06:01:50易采站长站整理

$(“#clickTips”).attr(‘style’,tipStyle).show();
}
bindListening();
});
//向上增加一行
$(“#addUp”).unbind().click(function(){
doAddTrData($(this),’up’);
bindListening();
});
//向下增加一行
$(“#addDown”).unbind().click(function(){
doAddTrData($(this),’down’);
bindListening();
});
//删除当前行
$(“#delete”).unbind().click(function(){
doDeleteTrData($(this),’delete’);
bindListening();
});
//编辑当前行
$(“#edit”).unbind().click(function(){
doEditTrData($(this),’edit’);
bindListening();
});
//查询操作
$(“#searchButton”).click(function(){
$(“#clickTips”).hide();
var trs = $(“#tableContainer”).find(“tr”);
var tdLength = trs.eq(0).children(‘td’).length;
var RegExp = ”;
for(var i=0;i<tdLength;i++){
RegExp += ‘[^,]*’+trs.eq(1).find(‘input’).eq(i).val()+'[^,]*,’;
}
//不加eval则正则匹配失效
RegExp = eval(‘/’ + RegExp.substr(0,RegExp.length-1) + ‘/i’);
var stringObject = [];
for(var i=2;i<trs.length;i++){
stringObject[i] = ”;
for(var j=0;j<tdLength;j++){
stringObject[i] += trs.eq(i).find(‘td’).eq(j).html()+’,’;
}
stringObject[i] = stringObject[i].substr(0,stringObject[i].length-1).toString();
}
for(var i=2;i<trs.length;i++){
if(stringObject[i].search(RegExp)) {
trs.eq(i).hide();
}else{
trs.eq(i).show();
}
}
bindListening();
});
var addTrData = $(“tr:first”).clone(true).attr(‘class’,’newAdd’);
var getIndex = function(clickedTd,type){
var fields = $(“tr”);
var addIndex = -1;
for(var i=1;i<fields.length;i++){
var tipStyle = clickedTd.parent().attr(‘style’);
var topValue = ‘top: ‘+(parseInt(fields.eq(i).offset().top)+addToTrTop);
var ie_topValue = ‘top: ‘+(parseInt(fields.eq(i).offset().top)+(addToTrTop-2));
if((tipStyle.indexOf(topValue) != -1) || (tipStyle.indexOf(ie_topValue) != -1)) {
switch(type.toLowerCase()){
case ‘up’:
addIndex = i-1;
break;
case ‘down’:
case ‘edit’:
case ‘delete’:
addIndex = i;
break;
}
}
}
return addIndex;
}
$(“#clearSearchButton”).click(function(){
$(“#clickTips”).hide();
$(“.search input[type=text]”).val(”);
$(“tr”).show();
$(“tr.cloneTr”).hide();
})
var doAddTrData = function(clickedTd,type){
if(getIndex(clickedTd,type) == -1) return false;
else {
var index=getIndex(clickedTd,type);
}
$(“table tr”).eq(index).after(addTrData);
setTimeout(‘$(“.newAdd”).attr(“class”,null)’,1000);