2016-07-27 5 views
0

wählen, weil ich eine db wie diese habenonselect ein-/ausblenden neue

id - id_parent - name 
1 - 0   - root 
2 - 1   - child_1 
3 - 1   - child_2 
4 - 3   - child_31 
5 - 3   - child_32 
6 - 2   - child_21 

ich wählen zu schaffen haben, dass „onselect“ zeigen, ein neues mit Kind wählen

dann zuerst von db wählen war

<select> 
<option>empty</option> 
<option>root</option> 
</select> 

auf root wählen, neu wählen Sie auf der Unterseite war

<select> 
<option>child_1</option> 
<option>child_2</option> 
<select> 

Ich versuche, mit Jquery zu tun, dass ...

+1

tun helfen Was Sie bisher versucht? –

+1

post jsfiddle hier – Vaibhav

Antwort

0

diesen Code sehe ich Ihr Problem zu lösen, ich glaube, dass Sie diese Arbeit

https://plnkr.co/edit/ckEIglujjD9OIOqeT6l5?p=preview

<h1>Hello Plunker!</h1> 

    <select id="parent"> 
    <option value="0">empty</option> 
    <option value="1">root</option> 
    </select> 

    <select id="child"> 

    </select> 

    <script> 
    $(document).ready(function() { 
     var info = [{ 
      id: 1, 
      parent: 0, 
      name: 'root' 
     }, { 
      id: 2, 
      parent: 1, 
      name: 'child_1' 
     }, { 
      id: 3, 
      parent: 1, 
      name: 'child_2' 
     }, { 
      id: 4, 
      parent: 3, 
      name: 'child_31' 
     }, { 
      id: 5, 
      parent: 3, 
      name: 'child_32' 
     }, { 
      id: 6, 
      parent: 2, 
      name: 'child_21' 
     } 


     ]; 


     $("#parent").on('click', function() { 

     var nowValue = $(this).val(); 
     $("#child").html(""); 
     $.each(info, function(index, value) { 
      if (value.parent == nowValue) { 

      var option = $('<option/>'); 
      option.attr({ 
       'value': value.id 
      }).text(value.name); 
      $('#child').append(option); 
      } 
     }); 

     }); 


    }); 
    </script> 
+0

mmm, ok, aber das ist ein Baum von 2 Ebene ... Ich brauche "unendliche" Ebene ... Wenn ich child_1 auswähle, muss neu mit child_21 auswählen zeigen ... – FireFoxII

Verwandte Themen