首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

小弟我用jquery ajax的.post方法,在服务器下拉回来的数据可以对其进行再一次的操作吗

2013-02-20 
我用jquery ajax的.post方法,在服务器上拉回来的数据可以对其进行再一次的操作吗?就是我按了一个按钮,触发

我用jquery ajax的.post方法,在服务器上拉回来的数据可以对其进行再一次的操作吗?
就是我按了一个按钮,触发post方法,到servlet里把从数据库查询出来的结果进行html代码的拼接,把它拼接成一个表格,然后返回到jsp上,现在问题是我可以对这个表格进行再一次的操作吗?(表格里每一行都有一个按钮,我想按一下按钮就把这行记录给删掉了)
附上部分代码:
jsp:
<div id="viewAll" alt="小弟我用jquery ajax的.post方法,在服务器下拉回来的数据可以对其进行再一次的操作吗" />
把onclick时间的参数换成dropData(this);
假设此行编号为rowNo
strbuf.append("<tr>").append("<td no="+rowNo+"><input id='i+1' type='button' value='删除' onClick='dropData(this.parentNode);'></td>");
js中
funciton dropData(td)
{
   var rowNo = td.getAttribute("rowNo");
   $ajax(type : "post",
cache : false,
url :  xxx.do// 请求地址
data : {
flag : "deldate", //比方是操作了性
rowno :rowNo 
},
dataType : "json", // 返回值类型
success : function(rs) { // ajax执行成功后执行的方法
if (rs.success == 1) {
                      var tr = td.parentNode;
                      var table = tr.parentNode;
                      table.removeChild(tr);


                }
     
);
}

大概思路就这样小弟我用jquery ajax的.post方法,在服务器下拉回来的数据可以对其进行再一次的操作吗

[解决办法]
上面是加载的处理方法,如果把代码再改一下就好了。


<table width="98%" align="center" class="grid-table" border="0"
cellspacing="0" cellpadding="3" style="table-layout:fixed;margin-top:1px">
<thead>
<tr>
<th class="grid-th" width="20px">
用户名
</th>
<th class="grid-th"  width="20px" align="center" ><input type="checkbox" id="check_all" /></th>
<th class="grid-th" width="90px">
登录名
</th>
<th class="grid-th" width="70px">
密码
</th>
<th class="grid-th" width="90px">
是否有效
</th>
<th class="grid-th" width="90px">
操作
</th>
</tr>
</thead>
<tbody id="tbody"></tbody>
<tfoot id="templateTr" style="display:none">
<tr class="{tr_class}">
<td class="grid-td" align="center"
style="text-overflow:ellipsis;overflow:hidden;white-space: nowrap;">
{username}
</td>
<td class="grid-td" align="center"
style="text-overflow:ellipsis;overflow:hidden;white-space: nowrap;">
{loginname}
</td>
<td class="grid-td" align="center"
style="text-overflow:ellipsis;overflow:hidden;white-space: nowrap;">
{pwd}
</td>
<td class="grid-td"
style="text-overflow:ellipsis;overflow:hidden;white-space: nowrap;">
{yxbz}
</td> 
<td class="grid-td"
style="text-overflow:ellipsis;overflow:hidden;white-space: nowrap;">
{cz}
</td> 
</tr>
</tfoot>
</table>



function query(url){
jQuery.ajax({
url:url
,data:encodeURI(encodeURI(condition))
,dataType:'json'
,success:function(data){ 
 if (data.error != null){ 
alert(data.error);
return;
}
if(data.isLogin=="N"){
alert("未登录");
window.top.location.href="<%=contextPath%>/login.jsp";
return;
}
$('#tbody').html('');
var html = [];
var templateTr = $('#templateTr').html();
var len = data.items.length;
if (len == 0){
html.push('<tr><td class="grid-td" colspan="4" align="center" style="color:#F00;">查无数据</td></tr>');
isExport=false;
}
else{
for(var i = 0 ; i < len ; i++){
var o = data.items[i];
var tmp = templateTr; 

tmp = tmp.replace(/\{username\}/g,(o.username == null ? '&nbsp;':o.username));
tmp = tmp.replace(/\{loginname\}/g,(o.loginname == null ? '&nbsp;':o.loginname));
tmp = tmp.replace(/\{pwd\}/g,o.pwd);
tmp = tmp.replace(/\{yxbz\}/g,o.yxbz==1?"有":"无");


tmp = tmp.replace(/\{cz\}/g,'<a href="javascript:;" onclick="delete('+o.id+')">删除</a>');

html.push(tmp);
}
}
var str = html.join('');
$('#tbody').html(str);
}
,error:function(){
alert('服务端报错');
}
}); 
}

function delete(id){
jQuery.ajax({
url:"你删除数据的URL"
,data:encodeURI(encodeURI(condition))
,dataType:'json'
,success:function(data){ 
 if (data.error != null){ 
alert(data.error);
return;
}
if(data.isLogin=="N"){
alert("未登录");
window.top.location.href="<%=contextPath%>/login.jsp";
return;
}
if(data.status==1){
alert('删除成功');
query("你查询数据的URL");
}else{
alert('删除失败');
}
,error:function(){
alert('服务端报错');
}
}); 

}


[解决办法]
引用:
我想在servlet里查出数据后,将它弄成一个集合,然后传回给data,在js里拼接,介样可以的吗?

当然可以了,用js处理数据,然后操作dom显示出来。

热点排行