So erhalten Sie einen Wert eines Elements anhand des Namens anstelle der ID

111

Wie könnte ich den Wert eines Elements anhand des Namens anstelle der ID ermitteln, z. B. wenn ich es anhand der ID verwende? $('#id').val();

Elitmiar
quelle
1
Was meinst du mit 'Name'?
Natrium
3
Aber was meinst du mit "Name"?
Kjagiello
6
Ich denke, er meint <input id = "ID" name = "Name" type = "text" />, dh er verwendet den Namen anstelle des ID-Feldes. Aber das kann nur sein, dass ich mit einem Beispiel paraphrasiere;)
Ed James
Sie können dort jeden CSS-Selektor verwenden (zumindest habe ich keine Ausnahme getroffen)
muka.gergely

Antworten:

316

Verwenden Sie die Namensattributauswahl:

$("input[name=nameGoesHere]").val();
Nick Craver
quelle
3
Beachten Sie auch, dass der Typ des Elements nicht erforderlich ist.
Rfunduk
5
+1 für dich Nick, weil du die Frage verstehen konntest.
Kjagiello
4
@thenduks: Während dies wahr ist ... wird der Name normalerweise bei Eingaben gefunden, und dies macht den Selektor viel schneller.
Nick Craver
nur ein Update dazu. Die von @NickCraver angegebene Methode hat bei mir nicht funktioniert, jedoch hat $ (": input [name = nameGoesHere]"). Val () in meinem Fall funktioniert.
Gunnrryy
41
$('[name=whatever]').val()

Die jQuery- Dokumentation ist dein Freund.

rfunduk
quelle
9

Verwenden Sie die Namensattributauswahl:

$("input[name='nameGoesHere']").val();

Es ist obligatorisch, Anführungszeichen um den Wert einzuschließen , siehe: http://api.jquery.com/attribute-equals-selector/

Essig
quelle
Ich wollte nur darauf hinweisen, dass in einigen Fällen (zumindest in meinen) der "Eingabe" -Teil nicht eingefügt werden muss. Folgendes wird ausreichen ---> $ ("[name = 'nameGoesHere']"). Val ();. Obwohl ich in einem Oracle-Paket arbeite. Ich habe mir diesen Beitrag als Referenz angesehen und konnte ihn nur dann zum Laufen bringen, wenn ich die Eingabe aus der Anweisung entfernt habe. Nur für den Fall, dass jemand anderes diesen Beitrag als Referenz besucht und auch mit Oracle arbeitet
user1898629
6

Um den Wert zu erhalten, können wir mehrere Attribute verwenden, von denen die seinem Namen - Attribut. Z.B

$("input[name='nameOfElement']").val();

Wir können auch andere Attribute verwenden, um Werte zu erhalten

HTML

<input type="text" id="demoText" demo="textValue" />

JS

$("[demo='textValue']").val();
Anshul
quelle
1

Dies funktioniert gut .. hier ist btnAddCat die Button-ID

$('#btnAddCat').click(function(){
        var eventCategory=$("input[name=txtCategory]").val();
        alert(eventCategory);
    });
Ajay Kumar
quelle
1
//name directly given
<input type="text" name="MeetingDateFrom">
var meetingDateFrom = $("input[name=MeetingDateFrom]").val();

//Handle name array
<select multiple="multiple" name="Roles[]"></select>
 var selectedValues = $('select[name="Roles[]"] option:selected').map(function() {
    arr.push(this.value);
  });
Jones
quelle
0

Sie können auch den Klassennamen verwenden.

$(".yourclass").val();
Cyberoot
quelle
0
let startDate = $('[name=daterangepicker_start]').val();
alert(startDate);
Abnormal
quelle
0

Welches Element wird für das Teil mit grünem Hintergrund verwendet? Geben Sie einfach den Namen des Elements ohne die Zeichen "<" und ">" ein. Geben Sie beispielsweise P ein, nicht <P>wenn die Antwort das <P>Element ist.

Amira Ahmed
quelle