为了账号安全,请及时绑定邮箱和手机立即绑定

我的Javascript代码重构笔记

标签:
JQuery

今天有做了几个asp.net结合Javascript的教程文章。现回顾头来看看那些Javascript脚本,有写得不太理想,过于复杂。现Insus.NET抽取出来,重构它们。

原来的代码:

function SelectedAll(cb) {
            cb.checked = cb.checked ? false : true;
            var gv = document.getElementById('<%=GridViewCouplets.ClientID %>');
            var rc = gv.rows.length;

            for (var i = 1; i < rc; i++) {
                var input = gv.rows[i].cells[0].getElementsByTagName("input");
                if (input[0].type == "checkbox" && input[0].checked) {
                    input[0].checked = false;
                    gv.rows[i].style.backgroundColor = "";
                }
                else {
                    input[0].checked = true;
                    gv.rows[i].style.backgroundColor = "#66ff33;";
                }
            }
        }

        function SelectedSingle(cb) {
            var row = cb.parentNode.parentNode;
            if (cb.checked) {
                row.style.backgroundColor = "#66ff33;";
            }
            else {
                row.style.backgroundColor = "";
            }
        }


经过重构之后的Javascript脚本:

function SelectedAll(cb) {
            var gv = document.getElementById('<%=GridViewCouplets.ClientID %>');
            var rc = gv.rows.length;

            for (var i = 1; i < rc; i++) {
                var input = gv.rows[i].cells[0].getElementsByTagName("input");

                if (input[0].type == "checkbox")
                {
                    input[0].checked = cb.checked;
                    gv.rows[i].style.backgroundColor = input[0].checked ? "#66ff33;" :"";
                }
            }
        }

        function SelectedSingle(cb) {
            var row = cb.parentNode.parentNode;           
                row.style.backgroundColor = cb.checked?  "#66ff33;":"";            
        }


原来的Javascript脚本:

function Check_Uncheck_All(cb) {
            var cbl = document.getElementById("<%=CheckBoxListMusicType.ClientID%>");
            var input = cbl.getElementsByTagName("input");

            if (cb.checked) {
                for (var i = 0; i < input.length; i++) {
                    input[i].checked = true;
                }
            }
            else {
                for (var i = 0; i < input.length; i++) {
                    input[i].checked = false;
                }
            }            
        }


重构之后的Javascript脚本:

function Check_Uncheck_All(cb) {
            var cbl = document.getElementById("<%=CheckBoxListMusicType.ClientID%>");
            var input = cbl.getElementsByTagName("input");

            for (var i = 0; i < input.length; i++) {
                input[i].checked = cb.checked;
            }
        }


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消