日期:2014-05-16  浏览次数:20428 次

js仿百度文库文档上传页面的分类选择器_第二版

仿百度文库文档上传页面的多级联动分类选择器第二版,支持在一个页面同时使用多个分类选择器;

此版本把HTML,CSS,以及图片都封装到“category.js”中,解决因文件路径找不到样式及图片的问题;

源码下载地址:http://download.csdn.net/detail/testcs_dn/7290577

初始状态,一个页面使用两个,可以初始化之前选中的分类:


选择状态:



当选中一个分类后,会触发“onChange”事件,如上图中的“您选择的分类编号为:xxx 隐藏输入域的内容为:xxx”,就是通过onChange”事件输出的。

页面调用代码及说明:

<!DOCTYPE html>
<html>
<head>
    <title>category</title>
    <script type="text/javascript" src="jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="category.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        //创建一个新的分类选择器,支持一个页面中使用多个分类选择器
        //可选择配置信息,默认值,说明:
        //sourceData:{ list:[] },                           //array:分类数据源,格式参考:data/categorySourceData.js
        //textDefault:"\u8BF7\u9009\u62E9\u5206\u7C7B",     //string:没有选择分类时的提示文字
        //onChange:null,                                    //event:当用户选中最后一级节点时触发
        //onSelect:null,                                    //event:当用户单击一个分类时触发,此事件在onChange之前触发
		//hidField											//string:隐藏值域的ID,可以自己指定;不指定的话实际的ID=默认ID+分类实例索引
															//onChange事件触发后,会将当前选中的分类赋值给此域,格式:1,17,14
        var category1 = $("#divCate1").category({ hidField: "hidField0", onSelect: function () {
            this.setCategoryName();
        },
            onChange: function (cid, level, text) {
                $("#divResult1").html("您选择的分类编号为:" + this.getCategoryCid() + "<br />隐藏输入域的内容为:" + $("#hidField0").val());
            }
        });

        //可以通过设置selectItems属性,设定初始选项
        category1.selectItems = [{ cid: 1 }, { cid: 11}];

        //重写获取分类的方法,可以在此方法中访问后台页面,从数据库获取分类数据
        //cid:分类编号
        //level:分类级别
        //返回值格式:{list: [{pcid: 0,cid: 1,name: "\u6559\u80b2\u4e13\u533a",isLast: false},{pcid: 0,cid: 1,name: "\u6559\u80b2\u4e13\u533a",isLast:true}]}
        //节点属性说明:
        //pcid:父级分类编号