2013
Apr
09

網頁好讀版

網頁常常會有國家,縣市,鄉鎮的選擇,而且選了其中一個國家之後,縣市還要能夠出現對應的變化,再來是選擇了其中一個縣市,鄉鎮又要出現相對應的變化。

類似的功能並不是很難實作,只是每次要用到的時候,就要重寫一次,或是為了不同的功能,而修改程式。

我寫了一個可以無限層級的選單,理論上你想要幾個層級都可以。

Demo Example

1. 第一層選單:
2. 第二層選單:
3. 第三層選單:
Show Result


multi Level Selector Library 使用方式

  • 第一步載入 multiLevelSelector.js
  • 第二步宣告 multiLevelSelector Obj : new PF_multiLevelSelector()
  • 第三步
    • 加入第一層選單 obj.addOption(attr1, data1);
    • 加入第二層選單 obj.addOption(attr2, data2);
    • 加入第三層選單 obj.addOption(attr3, data3);
  • 第四步 render 頁面 : obj.showOne(TagID);

File Download

全部內容

  1.  
  2. <div>
  3. 1. 第一層選單:
  4. <span id="text" style="margin: 10px 0 10px 0;">
  5. </span>
  6. </div>
  7.  
  8. <div>
  9. 2. 第二層選單:
  10. <span id="child" style="margin: 0 0 10px 0;">
  11. </span>
  12. </div>
  13.  
  14. <div>
  15. 3. 第三層選單:
  16. <span id="child2" style="margin: 0 0 10px 0;">
  17. </span>
  18. </div>
  19. <div>
  20. Show Result <br />
  21. <span id="result" style="margin: 0 0 10px 0;">
  22. </span>
  23. </div>
  24. </div>
  25. <script>
  26. var s = new PF_multiLevelSelector();
  27. s.addOption({id: "text", childId: "child", inputName: "a1", defaultValue: 2}, [":1:食品",":2:房子",":3:人名"]);
  28. s.addOption({id: "child", childId: "child2", inputName: "a2", defaultValue: 3}, ["1:1:零食類","1:2:正餐","2:3:豪宅","2:4:一般房子","3:5:名人","3:6:一般人"]);
  29.  
  30. s.addOption({id: "child2", inputName: "a3", defaultValue: 9, selectFunction: test}, ["1:1:餅乾","1:2:豆干","2:3:肉","3:4:千萬豪宅","4:5:百萬宅","5:6:郭台民","5:7:馬小九","6:8:小明","3:9:千萬別墅", "6:10:小王"]);
  31. s.showOne("text");
  32.  
  33. function test(E) {
  34. var node;
  35. node = E.currentTarget;
  36. $("#result").html("you select " + $(node).val());
  37. }
  38. </script>


網頁好讀版