jquery(全选、反选、添加、删除、移动元素)

本文介绍了如何通过JavaScript实现快递的全选与反选功能,包括清除已选快递、获取已选快递、移除已选快递及已选快递排序等功能。

/*全选/反选*/
function selectallexpressprovider(tbselectable) {
    var thisvalue = $(this).val();
    if (thisvalue == "全选") {
        $("input[type='checkbox']", "#" + tbselectable).attr("checked", true);
        $(this).val("反选");
    }
    else if (thisvalue == "反选") {
        $("input[type='checkbox']", "#" + tbselectable).attr("checked", false);
        $(this).val("全选");
    }
}

/*清除已选快递*/
function removeallexpressprovider(tbhasselect) {
    $("#" + tbhasselect).children().children().remove();
}

/*获取已选快递*/
function get_selectableexpressprovider() {
    var context = $(this);
    var tbselectable = $("#tbselectable", context);
    var tbhasselectbody = $("#tbhasselectbody", context);

    var selectableexpressprovider = $("input[type='checkbox']:checked", tbselectable);  //可选快递
    var selectedexpressprovider = $("input[type='radio']", tbhasselectbody);  //已选快递

    if (selectableexpressprovider.length == 0) {
        alert("请选择快递!");
        return;
    }

    $(selectableexpressprovider).each(function (index, value) {
        var providerid = $(value).attr("value");
        var providername = $(value).attr("providername");
        var existexpressprovider = true;

        for (var i = 0; i < selectedexpressprovider.length; i++) {
            var hasselectexpressprovidervalue = $(selectedexpressprovider[i]).attr("value");
            if (providerid == hasselectexpressprovidervalue) {
                existexpressprovider = false;
            }
        }

        if (existexpressprovider) {
            $(tbhasselectbody).append("<tr id=" + providerid + " height=\"15\"><td><input type='radio' name='expressprovider' value ='" + providerid + "' /></td><td>" + providername + "</td></tr>");
        }
    });
}

/*移除已选快递*/
function remove_selectableexpressprovider() {
    var context = $(this);
    var tbselectable = $("#tbselectable", context);
    var tbhasselect = $("#tbhasselect", context);

    var selectedexpressprovider = $("input[type='radio']:checked", tbhasselect);  //已选快递

    if (selectedexpressprovider.length == 0) {
        alert("请选择快递!");
        return;
    }

    $(selectedexpressprovider).each(function (index, value) {
        $(value).parent().parent().remove();
    });
}

/*已选快递-排序*/
function sort_selectableexpressprovider(elem) {
    var context = $(this);
    var tbhasselect = $("#tbhasselect", context);   

    var expressproviders = $("input[type='radio']", tbhasselect);
    var selectedexpressprovider = $("input[type='radio']:checked", tbhasselect);  //已选快递

    if (selectedexpressprovider.length == 0) {
        alert("请选择快递!");
        return;
    }

    $(expressproviders).each(function (index, value) {
        var providerid = $(value).attr("value");
        var selectedexpressproviderid = $(selectedexpressprovider).attr("value");

        if (providerid == selectedexpressproviderid) {
            var valueprev = $(value).parent().parent().prev();
            var valuenext = $(value).parent().parent().next();
            var selectedexpressproviderparent = $(selectedexpressprovider).parent().parent();

            if (elem == "moveup") {
                $(valueprev).before(selectedexpressproviderparent);
            }
            else if (elem == "movedown") {
                $(valuenext).after(selectedexpressproviderparent);
            }
        }
    });
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值