ztree

<script language="javascript" type="text/javascript">

     var setting = {
         view: {
             dblClickExpand: false
         },
         data: {
             simpleData: {
                 enable: true
             }
         },
         callback: {
             beforeClick: beforeClick,
             onClick: onClick,
             onDblClick: zTreeOnDblClick

         }
     };


     var zNodes = '<%= seriesData.ToString() %>';获得josn格式的字符串
    zNodes= eval('(' + zNodes + ')');  //或者$.paseJosn(zNodes);将josn格式的字符串转换成josn对象

    


     function beforeClick(treeId, treeNode) {
         var check = (treeNode && !treeNode.isParent);
         
        if (!check) alert("只能选择城市...");
        return check;
     }
    

     function onClick(e, treeId, treeNode) {
         var zTree = $.fn.zTree.getZTreeObj("treeDemo"),
   nodes = zTree.getSelectedNodes(),
   v = "";
         nodes.sort(function compare(a, b) { return a.id - b.id; });
         for (var i = 0, l = nodes.length; i < l; i++) {
             v += nodes[i].id + ",";
         }
         if (v.length > 0) v = v.substring(0, v.length - 1);
         var cityObj = $("#txtAREA_CODE");

         cityObj.attr("value", v);

 

         s = "";
         nodes.sort(function compare(a, b) { return a.id - b.id; });
         for (var i = 0, l = nodes.length; i < l; i++) {
             s += nodes[i].name + ",";
         }
         if (s.length > 0) s = s.substring(0, s.length - 1);
         var cityObj1 = $("#citySel");

         cityObj1.attr("value", s);
     }
    
     function zTreeOnDblClick(event, treeId, treeNode) {
         hideMenu();
     };


     function showMenu() {
         var cityObj = $("#citySel");
         var cityOffset = $("#citySel").offset();
         $("#menuContent").css({ left: cityOffset.left + "px", top: cityOffset.top + cityObj.outerHeight() + "px" }).slideDown("fast");

         $("body").bind("mousedown", onBodyDown);
     }
     function hideMenu() {
         $("#menuContent").fadeOut("fast");
         $("body").unbind("mousedown", onBodyDown);
     }
     function onBodyDown(event) {
         if (!(event.target.id == "citySel" || event.target.id == "menuContent" || $(event.target).parents("#menuContent").length > 0)) {
             hideMenu();
         }
     }

     $(document).ready(function() {
     $.get
     $.fn.zTree.init($("#treeDemo"), setting, zNodes);
        
     });
 </script>

  <div id="menuContent"  style="display:none; position: absolute;">
 <ul id="treeDemo" class="ztree" style="margin-top:0; width:160px;"></ul>
</div>

<div>

<tr>

<td width="15%" align="right" bgcolor="#EFF9FE">
                                行政区域:
                            </td>
                            <td width="34%">
                                <asp:TextBox ID="txtAREA_CODE" runat="server"  style="display:none" ></asp:TextBox>//存放code
                                <input id="citySel" type="text" style="width:250px" onclick="showMenu(); return false;" />存放name
                              
                            </td>

</tr>

</div>

 

 

后台:

 protected StringBuilder seriesData = new StringBuilder();//声明变量

 IList<Area_CodeInfo> areas = Area_CodeBLL.GetListByQuery("  where code <>'34' ");
          seriesData.Append("[");
          foreach(Area_CodeInfo area in areas)
          {
              seriesData.Append("{");
              seriesData.Append("\"id\":" + area.code);
              seriesData.Append(",");
              seriesData.Append("\"pId\":" + area.parentcode);
              seriesData.Append(",");
              seriesData.Append("\"name\":\"" + area.name+"\"");
              seriesData.Append("},");

            
          }
          seriesData.Remove(seriesData.Length - 1, 1);
          seriesData.Append("]");

posted @ 2015-05-22 15:13  嫣然美  阅读(519)  评论(0编辑  收藏  举报