|
@@ -380,45 +380,127 @@
|
|
|
*/
|
|
|
function init_ulc(node){
|
|
|
var ulc = $(node).initUlcByHtml({
|
|
|
- urlPrefix: root_path,
|
|
|
ulcLevel:null
|
|
|
});
|
|
|
return ulc;
|
|
|
};
|
|
|
|
|
|
-// $(node).find("select").each(function () {
|
|
|
-// var $ulc = $(this);
|
|
|
-// var obj = new Object();
|
|
|
-// obj.ulcNode = $ulc; //节点
|
|
|
-// obj.ulcURL = $ulc.attr("ulcURL"); //url
|
|
|
-// obj.ulcId = $ulc.attr("ulcId"); //节点option的value
|
|
|
-// obj.ulcName = $ulc.attr("ulcName");
|
|
|
-// obj.isFristSelect = false; //是否有“请选择项” false:无
|
|
|
-// obj.fristSelectMsg = "请选择";
|
|
|
-// obj.repData = function(res){ //res 即为原始返回的数据
|
|
|
-// return {
|
|
|
-// "isFlag": 200, //code判断
|
|
|
-// "code": res.returnCode, //解析接口状态
|
|
|
-// "msg": res.resultMsg, //解析提示文本
|
|
|
-// "data": res.returnMsg.list //解析数据列表
|
|
|
-// };
|
|
|
-// };
|
|
|
-// obj.parseData = function(data){ //res 即为原始返回的数据
|
|
|
-// return {
|
|
|
-// "id": data[$ulc.attr("id")], //
|
|
|
-// "val": data[$ulc.attr("valName")], //
|
|
|
-// "msg": data[$ulc.attr("msg")] //解析数据长度
|
|
|
-// };
|
|
|
-// };
|
|
|
-// ulcLevel.push(obj);
|
|
|
-// });
|
|
|
-// var ulc = $(node).initUlc({
|
|
|
-// urlPrefix: root_path,
|
|
|
-// judgeNameShield : [],
|
|
|
-// ulcLevel : ulcLevel
|
|
|
-// });
|
|
|
|
|
|
+/****
|
|
|
+ * 插件api :
|
|
|
+ * 插件依赖Jquery1.6以上
|
|
|
+ * -------初始化-------
|
|
|
+ * a:为某个select通用组件注册,使用js赋值详细参数
|
|
|
+ * html :
|
|
|
+ <div class="init_ulc">
|
|
|
+ <select class="ulc_level_1" ></select>
|
|
|
+ <select class="ulc_level_2" ></select>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ * js:
|
|
|
+ var $ulc1 = $(".init_ulc").find(".ulc_level_1");
|
|
|
+ var $ulc2 = $(".init_ulc").find(".ulc_level_2");
|
|
|
+ var ulc = $(".init_ulc").initUlc({
|
|
|
+ urlPrefix: "", // 根路径
|
|
|
+ judgeNameShield : ["x1","x2"], //在比对option的text的值时,需要去掉某些值,才能展示出包含的参数,如"省","市","县","乡","镇","市","自治区" -- 可选
|
|
|
+ allCallback: function xx(data){} //回调函数名称,可选 -- 所有的select点击,都会触发此函数,回调的值为所有的selece选中的data数据 -- 可选
|
|
|
+ ulcLevel : [ //select的集合
|
|
|
+ {
|
|
|
+ ulcNode: $ulc1, //第一个select的节点 -- 必选
|
|
|
+ ulcURL: "/getselect1", //url -- 必选
|
|
|
+ ulcId : $ulc1.attr("ulcId"), //用于默认选中某个选项 该值等于option的value -- 可选
|
|
|
+ ulcName: $ulc1.attr("ulcName"), //用于默认选中某个选项 该值等于option的text -- 可选
|
|
|
+ isFristSelect : false, //是否有首行选择项,如“请选择XXX” false:无 true:是 -- 可选
|
|
|
+ fristSelectMsg : "请选择XXX", //当isFristSelect为true的时候,首行默认选中"请选择XXX",默认value为空 -- 当isFristSelect为true,必选
|
|
|
+ callback:function xx(data){} // 当前select点击,触发该函数,回调的值为当前选中的data数据 -- 可选
|
|
|
+ repData: function(res){ //res 即为原始返回的数据,json返回数据 -- 必选
|
|
|
+ return {
|
|
|
+ "isFlag": 200, //返回数据与code的值返回比较,相等为获取成功,不等为获取失败 -- 可选 ,默认200
|
|
|
+ "code": res.xxxcode, //解析返回数据返回状态
|
|
|
+ "msg": res.xxxMsg, //解析提示文本,失败提示文本
|
|
|
+ "data": res.xxxList.data1List //解析数据列表,成功返回的是集合
|
|
|
+ };
|
|
|
+ },
|
|
|
+ parseData:function(data){ //data为repData中的data数据 -- 必选
|
|
|
+ return {
|
|
|
+ "id": data.xxxId, //解析data中id值,为option的value
|
|
|
+ "val": data.xxxName, //解析data中name值,为option的text
|
|
|
+ "msg": data.xxxMsg, //附加值,可以绑定某个不需要的值,为option新增msg属性 -- 可选
|
|
|
+ };
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ ulcNode: $ulc2, //第一个select的节点 -- 必选
|
|
|
+ ulcURL: "/getselect2", //url -- 必选
|
|
|
+ ulcId : $ulc1.attr("ulcId"), //用于默认选中某个选项 该值等于option的value -- 可选
|
|
|
+ ulcName: $ulc1.attr("ulcName"), //用于默认选中某个选项 该值等于option的text -- 可选
|
|
|
+ isFristSelect : false, //是否有首行选择项,如“请选择XXX” false:无 true:是 -- 可选
|
|
|
+ fristSelectMsg : "请选择XXX", //当isFristSelect为true的时候,首行默认选中"请选择XXX",默认value为空 -- 当isFristSelect为true,必选
|
|
|
+ callback:function xx(data){} // 当前select点击,触发该函数,回调的值为当前选中的data数据 -- 可选
|
|
|
+ repData: function(res){ //res 即为原始返回的数据,json返回数据 -- 必选
|
|
|
+ return {
|
|
|
+ "isFlag": 200, //返回数据与code的值返回比较,相等为获取成功,不等为获取失败 -- 可选 ,默认200
|
|
|
+ "code": res.xxxcode, //解析返回数据返回状态
|
|
|
+ "msg": res.xxxMsg, //解析提示文本,失败提示文本
|
|
|
+ "data": res.xxxList.data2List //解析数据列表,成功返回的是集合
|
|
|
+ };
|
|
|
+ },
|
|
|
+ parseData:function(data){ //data为repData中的data数据 -- 必选
|
|
|
+ return {
|
|
|
+ "id": data.xxxId, //解析data中id值,为option的value
|
|
|
+ "val": data.xxxName, //解析data中name值,为option的text
|
|
|
+ "msg": data.xxxMsg, //附加值,可以绑定某个不需要的值,为option新增msg属性 -- 可选
|
|
|
+ };
|
|
|
+ }
|
|
|
+ },
|
|
|
+ ]
|
|
|
+ });
|
|
|
+ *
|
|
|
+ * b:使用html来属性来携带参数,直接初始化
|
|
|
+ * html :
|
|
|
+ <div class="init_ulc" code="xxxcode" msg="xxxMsg" data="xxxList">
|
|
|
+ <select class="select"
|
|
|
+ ulcURL="/getselect1" ulcList="data1List" ulcValName="xxxName" ulcValId="xxxId" ulcMsg=""
|
|
|
+ ulcIsFristSelect="true" ulcFristSelectMsg="请选择XXX">
|
|
|
+ </select>
|
|
|
+ <select class="select"
|
|
|
+ ulcURL="/getselect2" ulcList="data2List" ulcValName="xxxName" ulcValId="xxxId" ulcMsg=""
|
|
|
+ ulcIsFristSelect="true" ulcFristSelectMsg="请选择XXX">
|
|
|
+ </select>
|
|
|
+ </div>
|
|
|
|
|
|
+ * js:
|
|
|
+ var ulc = $(".init_ulc").initUlcByHtml({
|
|
|
+ ulcLevel:null
|
|
|
+ });
|
|
|
+ * -------初始化END-------
|
|
|
+ * -------方法-------
|
|
|
+ * setUlcById(level,id1,id2……);
|
|
|
+ * level:
|
|
|
+ * 1:可以为第一个select的jq对象,
|
|
|
+ * ulc.setUlcById($("第一个select元素"),1001,2001); 等价 ulc.setUlcById($("第一个select元素"),1001); ulc.setUlcById($("第二个select元素"),2001);
|
|
|
+ *
|
|
|
+ * 2:可以level值(ulc初始化之后,会给每个select添加一个附加属性level,第一级select为0,第二级为1)
|
|
|
+ * ulc.setUlcById(0,1001,2001); 等价 ulc.setUlcById(0,1001); ulc.setUlcById(1,2001);
|
|
|
+ * id1/id2:
|
|
|
+ * id的值
|
|
|
+ *
|
|
|
+ * setUlcByName(level,name1,name2……); 基本操作同setUlcById一样
|
|
|
+ * 调用此方法,会去比对每一个select中option属性text的值,并不一定十分准确,另外还提供judgeNameShield集合来存储需要去除的文字,方便比对
|
|
|
+ * 具体方法参考 setUlcById()
|
|
|
+ *
|
|
|
+ * setUlcAllCallback(xxFunc); setUlcAllCallback为设置全回调用方法,点击所有ulc组件的select,都将调用此方法,
|
|
|
+ * xxFunc为自己的方法名称,如function xxFunc(data){} data: 每个select中option,都是一个data,ulc将会吧每一级选中的data存储下来形成集合
|
|
|
+ * data[0] ==》 第一级的select选中的参数的data
|
|
|
+ * data[1] ==》 第二级的select选中的参数的data
|
|
|
+ *
|
|
|
+ *setUlcCallback(xx1Func,level); setUlcCallback为单个select的点击事件设置回调方法
|
|
|
+ * xx1Func:
|
|
|
+ * 为自己的方法名称,如function xxFunc(ulc1Data){} ulc1Data: 该level的select所选的值
|
|
|
+ * level
|
|
|
+ * 级别0,1,2,3
|
|
|
+ * -------方法END-------
|
|
|
+ */
|
|
|
|
|
|
|
|
|
|