/// (function (window) { jQuery.fn.extend({ disable: function (state) { return this.each(function () { this.disabled = state; }); }, attrs: function () { /// /// 获得所有属性 /// var _attributes = {}; $.each(this.get(0).attributes, function (i, attrib) { _attributes[attrib.name] = attrib.value; }); return _attributes; } }); jqUtils = {} jqUtils.UISelect = { getText: function (id, hanlder) { /// /// 获取html select 选中文本 /// /// var _length = arguments.length; var _text = $("#" + id).find("option:selected").text(); if (_length == 1) { return _text; } if (_length == 2) { return hanlder(_text); } }, setOptionByText: function (id, filterText, fireEvent) { /// /// 根据文本选中option /// /// Id /// 需要选中的文本 /// 是否触发change事件;布尔类型 var _argument = arguments.length; if (_argument == 2) $("#" + id + " option:contains(" + filterText + ")").attr('selected', 'selected'); if (_argument == 3 && fireEvent == true) $("#" + id + " option:contains(" + filterText + ")").attr('selected', 'selected').trigger('change'); } } jqUtils.UICheckbox = { isChecked: function (id) { /// /// 获取html checkbox是否选中 /// /// 若选中则返回true;否则则返回false return $("#" + id).attr("checked") == 'checked'; }, getAllStatus: function (array) { /// /// 获取一组CheckedBox选中状态 /// 若选中则返回1,否则返回0 /// /// eg:var _array=new Array();_array.push('gp1Ck1');_array.push('gp1Ck2');_array.push('gp1Ck3') var _statusArray = new Array(); for (var i = 0; i < array.length; i++) { var _ckId = array[i]; _statusArray.push(jqUtils.UICheckbox.isChecked(_ckId) == true ? 1 : 0); } return _statusArray; }, getAllStatusByPrefix: function (prefix, count) { /// /// 获取一组CheckedBox选中状态 /// 若选中则返回1,否则返回0 /// /// ckeckbox前缀,譬如gp1ck /// 需要获取checkbox状态数量 var _ckGroup = new Array(); for (var i = 1; i <= count; i++) { _ckGroup.push(prefix + i); } return jqUtils.UICheckbox.getAllStatus(_ckGroup); } } jqUtils.UIRadio = { getValueByName: function (name) { /// /// 根据Name获取一组Radio中选中值 /// /// var _radioGroup = $('input[name=' + name + ']'); var _checkedValue = _radioGroup.filter(':checked').val(); return _checkedValue; } } jqUtils.UITable = { getObj: function (id) { /// /// 获取Table对象 /// /// Table ID var _table = $('#' + id + ' > tbody > tr').map(function () { return $(this).children().map(function () { return $(this); }); }); return _table; }, setCellValue: function (id, rowIndex, cellIndex, cellValue) { /// /// 设置单元格的值 /// /// Table ID /// 行索引,从零开始 /// 列索引,从零开始 /// 列值 var _tableObj = jqUtils.UITable.getObj(id); if (_tableObj.length > 0) { _tableObj[rowIndex][cellIndex].html(cellValue); } }, createHeaderRow: function (id, json) { /// /// 创建Table Header /// /// table id /// json数据 /// Table Header Header var columnSet = []; var headerTr$ = $(''); for (var i = 0; i < json.length; i++) { var rowHash = json[i]; for (var key in rowHash) { if ($.inArray(key, columnSet) == -1) { columnSet.push(key); headerTr$.append($('').html(key)); } } } $("#" + id).append(headerTr$); return columnSet; }, createTable: function (id, json) { /// /// 创建Table /// /// table id /// json数据 var columns = this.createHeaderRow(id, json); for (var i = 0; i < json.length; i++) { var row$ = $(''); for (var colIndex = 0; colIndex < columns.length; colIndex++) { var cellValue = json[i][columns[colIndex]]; if (cellValue == null) { cellValue = ""; } row$.append($('').html(cellValue)); } $("#" + id).append(row$); } } } window.jqUtils = jqUtils; })(window); jQuery.extend({ getJSONExt: function (url, paramter, successed) { /// /// $.getJSON扩展 /// /// 请求连接 /// 请求参数 /// 成功callback if (url.indexOf("?") > 0) { url = url + "&_t=" + Math.random(); } else { url = url + "?_t=" + Math.random(); } $.getJSON(url, paramter, function (data, textStatus, jqxhr) { if (jqxhr.status == 200) { if (data.Type == "Success") { successed(data.Data); } else { bootbox.alert(data.Content); } } else { bootbox.alert("请求发生故障或者错误,请重试!"); } }); }, postExt: function (url, paramter, successed) { $.post(url, paramter, function (data, textStatus, jqxhr) { if (jqxhr.status == 200) { if (data.Type == "Success") { successed(data.Data); } else { bootbox.alert(data.Content); } } else { bootbox.alert("请求发生故障或者错误,请重试!"); } }, "json") } });