Rumah  >  Artikel  >  hujung hadapan web  >  Jquery zTree pokok mengawal operasi pemuatan tak segerak_jquery

Jquery zTree pokok mengawal operasi pemuatan tak segerak_jquery

WBOY
WBOYasal
2016-05-16 15:13:361291semak imbas

zTree menggunakan kod teras JQuery untuk melaksanakan satu set pemalam Tree yang boleh melengkapkan fungsi yang paling biasa

  • Serasi dengan IE, FireFox, Chrome dan penyemak imbas lain
  • Berbilang Kejadian Pokok boleh dijana serentak dalam satu halaman
  • Sokong data JSON
  • Menyokong penjanaan statik sekali dan pemuatan tak segerak Ajax dalam dua cara
  • Menyokong pelbagai respons dan maklum balas acara
  • Menyokong pergerakan, pengeditan dan pemadaman nod pokok
  • Menyokong sebarang perubahan kulit/ikon diperibadikan (bergantung pada css)
  • Menyokong kotak pilihan yang sangat fleksibel atau fungsi pemilihan radio
  • Konfigurasi parameter mudah untuk mencapai fungsi fleksibel

Pemuatan tak segerak bermaksud: apabila anda mengklik untuk mengembangkan nod pokok, minta tindakan latar belakang untuk mengembalikan data nod anak nod yang diklik dan memuatkannya.

Di sini kami terutamanya mereka bentuk tetapan atribut async bagi pembolehubah tetapan ztree:

var setting = {
  async: {
   enable: true,
   url:InitServiceIpsData.action,
   autoParam:[id, name],
   dataFilter: filter  
  },
 

Apabila anda mengklik untuk mengembangkan nod pepohon, tindakan yang ditentukan oleh URL akan diminta untuk mendapatkan data nod anak, dan kemudian terikat pada ztree.

Perhatikan bahawa tindakan latar belakang di sini mengembalikan rentetan JSON dan ztree hanya menerima tatasusunan apabila mengikat data nod baharu, jadi anda perlu menggunakan fungsi penapis untuk melaksanakan operasi pembersihan dan penukaran data sebelum mengikat dan menukar rentetan itu kepada tatasusunan :

//过滤异步加载ztree时返回的数据 
 function filter(treeId, parentNode, childNodes) {
  if (!childNodes) 
   return null;  
  childNodes = eval((+childNodes+)); //必须转换为[{id:103,pId:1,name:'子节点3'}];这样的格式 
  return childNodes;
 }

Apabila anda mengklik untuk mengembangkan nod pokok ztree, tindakan akan diminta untuk mendapatkan data nod anak dan terikat.

Berikut ialah pelaksanaan tindakan latar belakang:

public String InitServiceIpsData()
 {
  HttpServletRequest request = ServletActionContext.getRequest();
  String id = request.getParameter(id);
  String name = request.getParameter(name);
  System.out.println(请求获取+name+的ip列表);
   
  List<hashmap<string,object>> list = new ArrayList<hashmap<string,object>>();   
  for(int i = 1; i <= 2; i++){ 
   HashMap<string,object> hm = new HashMap<string,object>();   
   hm.put(id, id + 0 + i);
   hm.put(pId, id);
   hm.put(name, name + _IP_ + i);
   hm.put(isParent, false);
   list.add(hm);
  } 
   
  JSONArray finalJson = JSONArray.fromObject(list);
  this.initServiceIpsData = finalJson.toString();
  return SUCCESS;
 }</string,object></string,object></hashmap<string,object></hashmap<string,object>
 

Di atas adalah langkah terperinci untuk melaksanakan operasi pemuatan tak segerak bagi kawalan pokok Jquery zTree. Saya harap ia akan membantu pembelajaran semua orang.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn