2016-04-20 13 views
2

Meine Antwort zeigt, wie 1,2,3,1,2,1,4,5 (ohne öffnen und schließen tag)Wie die Werte mit offenen Klammer und schließende Klammer schieben

aber ich will wie dieses modell zeigen [1,2,3] [1,2] [1,4,5]

wollen mit open close tag, weil die optionswerte in der datenbank gespeichert werden sollen.

mein Skript

var foo = []; 
$('.box22').each(function(x,v){ 
var temp =[] 
    $(v).find("select[name='category[]'] > option:selected").each(function(i, selected){ 
    temp.push($(selected).val(),[]); 
}); 
foo.push(temp); 
alert(foo); 
}); 

meiner Ansicht nach Dateicode

<?php for($i=0; $i<4; $i++) { ?> 
<div class="box22"> 
    <div class="mcm"> 
    <input type="text" placeholder="Myself" id="coworkers" name="coworkers[]" /> 
    <span class="bar"></span> 
    </div> 
    <div class="select2"> 
    <select id="category_<?php echo $i; ?>" name="category[]" class="chosen-select ref-sel1" multiple > 
    <?php 
    foreach($genre as $gen){ 
     echo '<option value='.$gen->genre_id.'>'.$gen->genre_name.'</option>'; 
    } 
    ?> 
    </select> 
    </div> 
</div> 
<?php } ?> 
+0

was ist Ihre Ausgabe mit diesem Skript? –

+0

in Alarm es zeigt 1,2,3,1,2,1,4,5 – shruthi

+0

@shruthi Warum müssen Sie diese Daten alarmieren? – madalinivascu

Antwort

1

Versuchen Sie, die folgende

var foo = []; 
    $('.box22').each(function(x, v) { 
    var temp = [] 
    $(v).find("select[name='category[]'] > option:selected").each(function(i, selected) { 
     temp.push($(selected).val()); 
    }); 
    text = '[' + temp.join(',') + ']' 
    foo.push(text); 

    }); 
    alert(foo.join('')); 

demo here

+1

Danke. Antwort von hier erhalten. – shruthi

1

versuchen, diese

var foo = new Array(); 
var temp =new Array(); 
$('.box22').each(function(x,v){ 

    $(v).find("select[name='category[]'] > option:selected").each(function(i, selected){ 

     temp={ 
      p: '[' +$(selected).val()+']', 
       } 
     }); 
    foo.push(temp.p); 
    alert(foo); 
}); 
+0

Welchen Schlüssel hat das '$ (selected) .val();' goth? – madalinivascu

1

Bitte verwenden Sie diesen

var foo = []; 
      $('.box22').each(function(x,v){ 
      var temp =[]; 
      $(v).find('select option').each(function() { 
       var selected = $(this).attr("selected"); 
       var selectedvalue = $(this).attr("value"); 
       if(selected = "selected") 
       { 
        temp.push(selectedvalue); 
       } 
      }); 
      foo[x] = temp; 
       console.log(temp); 
      });