2016-05-14 15 views
0

Ich weiß, dass "this.value" den Wert des <option> Tag bekommen können:HTML Wert der Suche nach

<select name="users" onchange="showUser(this.value)"> 
    <option value="">Select a person:</option> 
    <option value="1">Peter Griffin</option> 
    <option value="2">Lois Griffin</option> 
    <option value="3">Joseph Swanson</option> 
    <option value="4">Glenn Quagmire</option> 
    </select> 

Aber wie einen Wert erhalten (value = "IE") aus dem <a> Tag, weil diese funktioniert nicht:

<a href="#" value="IE" onclick="showUser(this.value)">Click</a> 

Antwort

0

der einfachste Weg, dies in reinem Javascript zu tun, wahrscheinlich

document.getElementById('anyId').value 
ist

Das HTML-Tag zählt nicht als ein Objekt, sondern als ein Element. Daher möchten Sie lieber die getElement-Funktion verwenden. Die vollständige Umsetzung dieses Codes in Ihrem Fall wäre:

<a href="#" value="IE" onclick="showUser(event)">Click</a>

function showUser(event){ 
    console.log(event.target.value); 
} 
+0

Wird auch nicht helfen. –

+0

@Lukas Genau, sieh dir den Schnitt an, den ich gerade gemacht habe. Vielleicht brauchen Sie ein wenig Aufräumen, wenn Sie möchten, kann ich einen Stift machen und es mit Ihnen verknüpfen. –

0

dieser Ansatz Ihnen helfen werden können, Attributwert.

Was kann ich Ihnen empfehlen, wenn Sie Ihre Funktion showuser nicht ändern wollen, ist etwas in der Nähe der folgenden Funktionen ausführen:

<a href="#"><button id="myButton" value="IE" onclick="showUser(this.value)"></button></a> 

dann machen Sie die Taste wie ein Link erscheinen Sie eine CSS-Lösung versuchen können, wie der folgende:

#myButton { 
    border:none; 
    background:none; 
    color:blue; 
    text-decoration:underline; 

} 

#myButton:hover { 
    color:purple; 
    cursor:pointer; 
} 
+0

Es wird nicht ....... –

0

leider der Link-Tag <a> eine nicht haben:

<a href="#" value="IE" id="click" onclick="showUser(document.getElementById('click').value)">Click</a> 
+0

Es wäre toll, aber ich will nur einen Link, nicht einen Knopf. – Lukas

+0

ja in der Tat, nachdem Sie eine Design-Lösung, um Ihre Schaltfläche wie ein Link für Beispiel aussehen können Sie versuchen, die folgenden in CSS Ich komme mit einer Probe zurück –

+0

Ich sende Ihnen die CSS –

4

das Attribut value in a Tag nicht existiert. Sie können die W3C-Referenz in https://www.w3.org/TR/html-markup/a.html#a-attributes überprüfen.

Sie könnten HTML5-Datensatz verwenden. (data-value="IE").

Sie müssen kein id Attribut in Ihrem a Tag hinzufügen.

Entfernen Sie einfach die .value in onclick="showUser(this.value)". Mit this können Sie auf alle Attribute des Tags zugreifen.

So etwas wie dies mit reinem JavaScript:

function showUser(elem) { 
 
    alert(elem.getAttribute("data-value")); 
 
}
<a href="#" data-value="IE" onclick="showUser(this)">Click</a>

+1

Vielleicht wäre dies der beste. Ich werde es auf meiner Website versuchen. – Lukas

+0

Warum verwenden Sie showUser (elem), kein showUser()? – Lukas

+0

'elem' ist ein Parameter, der die DOM-Referenz ist. Mit 'this 'können Sie auf diese Weise auf alle Attribute des Tags zugreifen. –

0

Anstatt ein Wertattribut zu verwenden, von dem ich nicht sicher bin, dass es sich um ein Attribut des Anchor-Tags handelt, können Sie das Attribut rel verwenden und ihm den Wert ur zuweisen. Jetzt können Sie Ihren Wert einfach so erhalten: $ ('# yourid'). Attr ('rel');

Ich hoffe, es hilft.

0

Sie können dies versuchen:

<a href="#" value="IE" onclick="showUser(this)">Click</a> 

function showUser(elem) { 
    console.log(elem.getAttribute("value")); 
}