...
|
...
|
@@ -29,9 +29,6 @@ |
|
|
if (opt.loadFilter) {
|
|
|
opt.data = opt.loadFilter(data);
|
|
|
}
|
|
|
if (opt.onLoadSuccess) {
|
|
|
opt.onLoadSuccess(opt.data);
|
|
|
}
|
|
|
_createSelect(self);
|
|
|
}
|
|
|
});
|
...
|
...
|
@@ -41,7 +38,7 @@ |
|
|
});
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 生成select
|
|
|
*/
|
...
|
...
|
@@ -53,9 +50,9 @@ |
|
|
if (opt.className) {
|
|
|
jq.addClass(opt.className);
|
|
|
}
|
|
|
if (!opt.data || opt.data.length == 0) {
|
|
|
return;
|
|
|
}
|
|
|
/*if (!opt.data) {
|
|
|
return;
|
|
|
}*/
|
|
|
if (opt.onChange) {
|
|
|
jq.change(function() {
|
|
|
var optionData = jq.find("option[value='"+ jq.val() +"']").data("optionData");
|
...
|
...
|
@@ -68,22 +65,47 @@ |
|
|
$(opt.data).each(function(index, item) {
|
|
|
$("<option "+ ((opt.value && opt.value == item[opt.valueField]) ? "selected" : "") +">").data("optionData", item).val(item[opt.valueField]).html(item[opt.textField]).appendTo(jq);
|
|
|
});
|
|
|
if (opt.onLoadSuccess) {
|
|
|
opt.onLoadSuccess.call(jq, opt.data);
|
|
|
}
|
|
|
|
|
|
//设置已经加载完成
|
|
|
jq.attr("loadStatus", "1");
|
|
|
}
|
|
|
|
|
|
function _getValue(jq) {
|
|
|
return $(jq).val();
|
|
|
}
|
|
|
|
|
|
function _getText(jq) {
|
|
|
var obj = $(jq).find("option:selected");
|
|
|
return obj ? obj.html() : "";
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//方法
|
|
|
$.fn.select.methods = $.extend({}, $.fn.validate.methods, {
|
|
|
|
|
|
/**
|
|
|
* 获取值
|
|
|
*/
|
|
|
getValue : function() {
|
|
|
return _getValue(this);
|
|
|
},
|
|
|
/**
|
|
|
* 获取文本
|
|
|
*/
|
|
|
getText : function() {
|
|
|
return _getText(this);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
|
|
|
//事件
|
|
|
$.fn.select.event = {
|
|
|
$.fn.select.event = $.extend({}, $.fn.validate.event, {
|
|
|
/**
|
|
|
* 加载完成执行
|
|
|
* @param data
|
|
|
*/
|
|
|
onLoadSuccess : function(data) {
|
|
|
|
|
|
|
|
|
},
|
|
|
/**
|
|
|
* 当下拉框改变的时候执行
|
...
|
...
|
@@ -91,8 +113,8 @@ |
|
|
* @param optionData
|
|
|
*/
|
|
|
onChange : function(value, optionData) {}
|
|
|
};
|
|
|
|
|
|
});
|
|
|
|
|
|
//属性
|
|
|
$.fn.select.defaults = $.extend({}, $.fn.select.event, $.fn.validate.defaults, {
|
|
|
firstText : undefined,
|
...
|
...
|
@@ -109,9 +131,9 @@ |
|
|
loadFilter : function(data) {},
|
|
|
value : null
|
|
|
});
|
|
|
|
|
|
|
|
|
/**
|
|
|
其中data包含的属性有
|
|
|
|
|
|
*/
|
|
|
其中data包含的属性有
|
|
|
|
|
|
*/
|
|
|
})(jQuery); |
|
|
\ No newline at end of file |
...
|
...
|
|