随笔 - 6  文章 - 129  trackbacks - 0
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(14)

随笔档案(6)

文章分类(467)

文章档案(423)

相册

收藏夹(18)

JAVA

搜索

  •  

积分与排名

  • 积分 - 815447
  • 排名 - 49

最新评论

阅读排行榜

评论排行榜

<script type="text/javascript" src="<%=root %>/dwr/interface/systemDaoAjax.js"></script>
    <script type="text/javascript" src="<%=root %>/dwr/engine.js"></script>
    <script type="text/javascript" src="<%=root %>/publicJS/jquery-1.3.1.js"></script>
    <script type="text/javascript">
        $(function(){
            //edit table可編輯表格
            var numTD = $("#datatable tbody td.edit");//排除掉不能被修改的單元格
            numTD.dblclick(function(){
                var inputobj = $("<input type='text'>");//新建文本輸入框
                var tdobj = $(this);//被編輯的單元格
                var text = tdobj.html();
               
                inputobj.val(text);
                //important 一定要在插入文本框前進行判斷
                if(tdobj.children("input").length > 0){
                    return false;
                }
                tdobj.html("");
                inputobj.width(tdobj.width());
               
                inputobj.appendTo(tdobj);
                inputobj.trigger("focus").trigger("select");
                //阻止文本框的雙擊事件
                inputobj.click(function(){
                    return false;
                });
                //處理鍵盤事件
                inputobj.keyup(function(event){
                    //獲取當前按鍵的值
                    //jQuery的event對象上有一個which的屬性可以獲得鍵盤按鍵的鍵值
                    var keycode = event.which;
                    //處理回車的情況
                    if(keycode == 13){
                        //獲取當前文本框的內容
                        var inputtext = $(this).val();
                        //將td的內容修改成文本框珠內容
                        tdobj.html(inputtext);
                        var v_id = tdobj.parent().children().eq(1).html();
                        var column = tdobj.attr("id");
                       
                        if(column == "roleName"){
                            systemDaoAjax.updateRole({id : v_id,
                                            roleName : tdobj.parent().children("#roleName").html(),
                                            createUser : $("#hidden_username").val()
                                                }, null);
                        }else if(column == 'roleDesc'){
                            systemDaoAjax.updateRole({id : v_id,
                                            roleDesc : tdobj.parent().children("#roleDesc").html(),
                                            createUser : $("#hidden_username").val()
                                                }, null);
                        }
                    }
                    //處理ESC的情況
                    if(keycode == 27){
                        //將td中的內容原來為原先的值text
                        tdobj.html(text);
                    }
                });
                //文本框失去焦點事件,與ESC事件一樣
                inputobj.blur(function(){
                    //將td中的內容原來為原先的值text
                    tdobj.html(text);
                });
            });
        });
        function checkUserName(){
            var username = document.getElementById("username").value;
            if(!username==""){
                systemDaoAjax.validateUserName(username, function userNameCallback(data){
                    if(data){
                        document.getElementById("saveButton").disabled = false;
                        document.getElementById("feedBackMessage").style.display='none';
                        setCheckbox();//設置或者清空篩選框
                    }else{
                        document.getElementById("saveButton").disabled = true;
                        document.getElementById("feedBackMessage").style.display='block';
                    }
                });
            }
        }
        function setCheckbox(){
            var checkitem = document.getElementsByName("roleIdCheckbox")
            systemDaoAjax.getRoleByUserName(document.getElementById("username").value, function funcRoleCallback(roleArray){
                for(var i=0; i<checkitem.length; i++) {
                    checkitem[i].checked=false;
                    for(var j=0; j<roleArray.length; j++){
                        if(checkitem[i].value==roleArray[j])
                            checkitem[i].checked=true;                           
                    }
                }
            });
        }
        function saveUserRole(){
            var arrays = new Array();
            var items = document.getElementsByName("roleIdCheckbox")
            for(i=0; i<items.length; i++) {
                if(items[i].checked)
                    arrays.push(items[i].value);
            }
            if(arrays.length>0){
                systemDaoAjax.saveUserRole(document.getElementById("username").value, arrays, function saveUserRoleCallback(data){
                    if(data)
                        alert("操作成功!");
                    else
                        alert("注意:操作失敗!");
                });
            }else{
                alert("請選擇要授權的角色!");
            }
        }
    </script>


posted on 2009-12-22 16:46 Ke 阅读(1113) 评论(1)  编辑  收藏 所属分类: javascriptajaxjquery

FeedBack:
# re: jQuery+DWR動態編輯表格Script 2010-05-24 09:23 劉文彬
哇, 樓主說的好呀, 我頂~  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: