当前位置:编程学习 > JAVA >>

jquery 编辑table tr

最近因项目需要整理了个jquery 编辑table tr实例  直接上代码......
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">

<!-- saved from url=(0059)http://www.360doc.com/content/06/1229/11/16915_311738.shtml -->
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD>
<TITLE>js操作刷新</TITLE>
<META http-equiv=Content-Type content="text/html; charset=utf-8";>
<META content=360doc name=classification>
<META content=js操作刷新 name=keywords>
<META content=js操作刷新 name=description>
<script src="jquery.js" type="text/javascript"></script>
<body>
<h1>实例1</h1>
<table cellpadding="2" cellspacing="2" border="1" width="80%">
<tr>
<td>所属类别</td>
<td>最小值</td>
<td>最大值</td>
<td> </td>
</tr>
<tr>
<td>类别1</td>
<td>2</td>
<td>10</td>
<td id="1"><input type="button" onClick="edit(this)" value="修改"/></td>
</tr>
<tr>
<td>类别2</td>
<td>5</td>
<td>100</td>
<td id="2"><input type="button" onClick="edit(this)" value="修改"/></td>
</tr>
</table>

<script type="text/javascript">
function edit(obj){
    var old0=$(obj).parent().prevAll(":eq(0)").text();
    var old1=$(obj).parent().prevAll(":eq(1)").text();
    $(obj).parent().prevAll(":eq(0)").data("oldtxt",old0);//将单元格原文本保存在其缓存中,便修改失败或取消时用
    $(obj).parent().prevAll(":eq(1)").data("oldtxt",old1);
    $(obj).parent().prevAll(":eq(0)").html("<input type='text' value='"+old0+"'");
    $(obj).parent().prevAll(":eq(1)").html("<input type='text' value='"+old1+"'");
    $(obj).parent().append(" <input type='button' onClick='cancel(this)' value='取消'/>");
    $(obj).attr("value","保存");
    $(obj).attr("onClick","save(this)");
}

function save(obj){
    var id=$(obj).parent().attr("id");  //id
    var category=$(obj).parent().prevAll(":eq(2)").text(); //类别
    var min=$(obj).parent().prevAll(":eq(1)").children().val().trim(); //默认值
    var max=$(obj).parent().prevAll(":eq(0)").children().val().trim(); //最大值
    jQuery.ajax({
        type : 'POST',
        url     : '<%=basePath%>/test.do?method=modify',
        data : 'id='+id+'&category='+category+'&min='+min+'&max='+max,
        dataType : 'json',
        success : function(rs){
            if(rs.success){
                $(obj).parent().prevAll(":eq(1)").html(min);
                $(obj).parent().prevAll(":eq(0)").html(max);
                $(obj).parent().html("<input type='button' onClick='edit(this)' value='修改'/>");
            }else{
                jAlert(errorTitle,'失败',true);
                cancel(obj); //取消
            }
        }
    });
}

function cancel(obj){
    var old0=$(obj).parent().prevAll(":eq(0)").data("oldtxt");//将单元格内容设为原始数据
    var old1=$(obj).parent().prevAll(":eq(1)").data("oldtxt");
    $(obj).parent().prevAll(":eq(0)").html(old0);
    $(obj).parent().prevAll(":eq(1)").html(old1);
    $(obj).parent().html("<input type='button' onClick='edit(this)' value='修改'/>");
}
</script>
</body></html>


摘自 spring_0534的专栏
补充:web前端 , JavaScript ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,