JS操作Radio與Select

qingyezhu發表於2015-03-09
//radio的chang事件,以及獲取選中的radio的值
$("input[name=radioName]").on("change",
        function() {
            var val= this.value;
});

 

//初始化下拉框元件
    function initSelect(id, data) {
        var arr = [];
        for (var i = 0,
        len = data.length; i < len; i++) {
            var item = data[i];
            arr.push("<option value=\"" + item["val"] + "\" other=\"" + item["other"] + "\">" + item["text"] + "</option>");
        }
        var $select = $("#" + id);
        $select.children().remove();
        $select.append(arr.join(""));
    }

 

//ajax請求
    function ajax(url, msg, callback, paramArr) {
        $.ajax({
            url: url,
            type: 'post',
            dataType: 'json',
            data: paramArr,
            success: function(data) {
                callback.call(null, data);
            },
            error: function() {
                alert(msg);
            }
        });
    }

 

 

//將左邊的下拉框中選中項新增到右邊的下拉框中;將右邊下拉框中選中的項刪除
    function addOrDel(flag) {
        var $left = $("#left");
        var $right = $("#right");
        if (flag == 0) {
            //新增
            var $select = $left.find("option:selected");
            var $options = $right.children();
            var optionArr = [];
            for (var i = 0,
            len = $options.length; i < len; i++) {
                optionArr.push($options[i].value + "");
            }
            if ($select.length == 0) {
                //當沒有指標被選中時
                alert("請先選擇指標,再進行新增");
                return;
            }
            var arr = [];
            for (var i = 0,
            len = $select.length; i < len; i++) {
                var item = $select[i];
                var val = item.value;
                if ($.inArray(val, optionArr) != -1) {
                    //是否已存在【根據val查詢】
                    continue;
                }
                var other= item.getAttribute("other");
                arr.push("<option value=\"" + val + "\" other=\"" + other+ "\">" + (item.text + "[" + obj.getMc(other)) + "]" + "</option>");
            }
            $right.append(arr.join(""));
        } else {
            //刪除
            var $select = $right.find("option:selected");
            if ($select.length == 0) {
                //當沒有選中的指標時
                alert("請先選擇指標,再進行刪除");
                return;
            }
            for (var i = 0,
            len = $select.length; i < len; i++) {
                //一個一個的刪除
                var item = $select[i];
                $(item).remove();
            }
        }
    }

 

//類---類別
    var obj= {
            arr: ["年", "季", "月"],
            getMc: function(type) {
                type--;
                var arr = this.arr;
                var len = arr.length;
                if (type< 0 || type>= len) {
                    return "";
                }
                return arr[type];
            }
        };

 

相關文章