2017-02-25 10 views
0

Ich versuche, jedes Element mit dem gleichen Namen zu lesen. Ich habe versucht, mit jeweils als iterieren unterWie dom Elementwert von jquery zu lesen

var subarray=[]; 
$('.subjects').each(function() { 
    subarray[counter] = $('.subjects').val(); 
    counter = counter + 1;     
}); 

Aber wie können wir auf den Wert der spezifischen (einzeln) Element beziehen oder Punkt darin. ? Zur Klarstellung gibt es 5 Eingänge mit gleichem Namen. Und ich möchte Werte von jedem dieser Elemente lesen.

+0

Verwendung $ (this) .val(); –

+0

@ Mohamed-Yousef, du hättest es mit deinem Kommentar beantworten können. IT hat richtig funktioniert. Vielen Dank. – Bineesh

Antwort

1

Verwenden Sie das Schlüsselwort this, um auf jedes Element in der Sammlung zu verweisen.

Oder Sie können einfach Array#push verwenden, um jedes Element in neu erstellten arr zu speichern.

var arr = []; 
 
$('.subjects').each(function(){ 
 
    console.log($(this).val());  
 
    arr.push($(this).val()); 
 
}); 
 

 
console.log(arr);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input class='subjects' type='text' value='1'> 
 
<input class='subjects' type='text' value='2'> 
 
<input class='subjects' type='text' value='3'>

1
$('.subjects').each(function(_element){ 
    subarray[counter]=$(this).val(); 
counter=counter+1;    
}); 

Sie würden wollen, entweder die $ (this) verwenden behandelt, dass jQuery bietet, oder eine Variable in der Funktion hinzufügen, um mit dem _elment Variable gezeigt.

1

Bitte verwenden Sie diesen ein

var subarray= []; 
$("input[name='subjects[]']").each(function() { 
subarray.push($(this).val()); 
});