Warum kann ich einen ID-Wert mit # erhalten, kann aber keinen Klassenwert mit bekommen. ab: $ (button#${value}
) .val() -> arbeitetWert einer Klasse erhalten
$ (button.${value}
) .val() -> funktioniert nicht.
Warum kann ich einen ID-Wert mit # erhalten, kann aber keinen Klassenwert mit bekommen. ab: $ (button#${value}
) .val() -> arbeitetWert einer Klasse erhalten
$ (button.${value}
) .val() -> funktioniert nicht.
Der JQ-Selektor wählt ein Objekt aus dem DOM aus, und Sie versuchen, den Wert dieses Objekts abzurufen. In diesem Fall haben Sie ein Objekt ohne Wert ausgewählt.
aber das würde seit meiner Situation nicht machen. Ich habe einen Wert, weil es mit einer ID funktioniert, aber wenn ich es zur Klasse ändere, wird es nicht laufen. –
In diesem Fall könnte es bedeuten, dass JQ ein Array anstelle eines einzelnen Werts zurückgibt, da es die Möglichkeit mehrerer Elemente mit derselben Klasse erwarten muss. – TecBrat
Wenn Ihr button
Element keine value
Eigenschaft hat, gibt val()
die leere Zeichenfolge zurück.
Aber wenn Sie ein value
Attribut auf Ihr button
Element setzen funktioniert es, wie dieser Ausschnitt zeigt:
var valueA = "a", valueB = "b";
console.log($(`button#${valueA}`).val());
console.log($(`button.${valueB}`).val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="a" class="b" value="hello">click</button>
Oder, wenn Sie zum Beispiel nehmen den Text der Schaltfläche (.text()
), dann funktioniert es auch:
var valueA = "a", valueB = "b";
console.log($(`button#${valueA}`).text());
console.log($(`button.${valueB}`).text());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="a" class="b" value="hello">click</button>
* "Schaltflächenelemente haben keine Werteigenschaft" *. Ich bin hier verwirrt, bist du sicher? MDN sagt das Gegenteil: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button –
hmm, ich muss mir das genau ansehen. Ich werde es versuchen und sehen, wie es läuft. –
Gleichzeitig möchte ich nicht auf der Seite drucken. Ist das was .text()? Ich mache ein Kartenspiel, also muss ich wissen, wenn der Benutzer den gleichen Wert trifft. –
Schaltflächenelemente haben keinen Wert. – trincot