2017-04-27 4 views
0

Ich habe 100 Eingabe Typ Text, die in einer Tabelle platziert werden. Sie haben kein ID-Attribut. Aber sie haben ein eindeutiges Namensattribut. Ich möchte die Namen aller Textfelder finden und in einem Array speichern, damit ich sie weiter verwenden kann. Jede Hilfe wäre willkommen.Erhalten Sie alle Namen von Eingabefeldern in einer Tabelle

+0

Sie alles versucht haben? – Rajesh

+1

Ich stimme für das Schließen dieser Frage als Off-Topic ab, da die Frage kein Anzeichen von Anstrengung zeigt. – Rajesh

+0

[Wie Name der Eingabe zu erhalten] (http://StackOverflow.com/Questions/3513809/Get-Attribute-Name- value-of-input) + [Looping durch alle Eingänge] (http://stackoverflow.com/questions/4758259/looping-through-input-fields-for-validation-using-jquery-each) sollte den Trick – Rajesh

Antwort

3

Versuchen mit Array#each und attr('name') jquery mit und für text Spiel nur mit input:text

var a=[]; 
 
$('input:text').each(function(){ 
 
a.push($(this).attr('name')) 
 
}) 
 
console.log(a)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text" name="one" ><input type="text" name="two" ><input type="text" name="three" ><input type="text" name="four" ><input type="text" name="five" ><input type="text" name="six" >

+0

Sollen wir wirklich solche Fragen beantworten, die keine Anstrengung zeigen? – Rajesh

+1

OP sollte besser '$ (": text ")' wenn es mehr als nur diese 100 Eingänge in der Tabelle gibt –

1

Schleife über inputs und .each() Funktion verwenden, um über jedes Element zu iterieren, dann erhalten Sie die Namen über .prop() Funktion.

var names = []; 
 

 
$('input').each((k,v) => names.push($(v).prop('name'))); 
 

 
console.log(names);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input name="a"> 
 
<input name="b"> 
 
<input name="c"> 
 
<input name="d">

+0

Shoud tun wir beantworten wirklich solche Fragen, die keine Anstrengung zeigen? – Rajesh

+1

@Rajesh Dies ist eine schwierige Frage. Es hängt vom Inhalt der Frage ab. –

+0

Vielleicht ist es schwierig, aber Sie ** müssen ** etwas teilen. Sogar Google-Suchlinks würden helfen. Aber das ist nur ein Wunsch und kein Problem. Auch wenn Sie Ihr Problem lösen, wird es einfach – Rajesh

1

diesen Code verwenden alle Eingänge Datei

html zu erhalten:

<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
<table> 
<tr> 
    <td><input name="input1" /></td> 
    <td>test</td> 
</tr> 
<tr> 
    <td><input name="input2" /></td> 
    <td>test</td> 
</tr> 
<tr> 
    <td><input name="input3" /></td> 
    <td>test</td> 
</tr> 
</table> 
<button id="button"> 
submit 
</button> 
<div id="result"> 
</div> 

JS:

$(document).ready(function(){ 
    $('#button').click(function(){ 
    var data = [] 
    $('input').each(function() { 
     data.push({ 
     "name": $(this).attr('name'), 
     "value": $(this).val() 
     }) 
    }); 
    console.log(data) 
    $('#result').text(JSON.stringify(data)) 
    }); 
}); 

https://jsfiddle.net

Verwandte Themen