Heim  >  Artikel  >  Web-Frontend  >  Reine JavaScript-Implementierung, um die Werte von onclick, onchange und anderen events_javascript-Fähigkeiten zu erhalten

Reine JavaScript-Implementierung, um die Werte von onclick, onchange und anderen events_javascript-Fähigkeiten zu erhalten

WBOY
WBOYOriginal
2016-05-16 16:23:261366Durchsuche

Als Xiaocai sich heute mit dem Kaskadenproblem von Dropdown-Menüs befasste, wollte ich den Inhalt eines Ereignisses im HTML-Tag abrufen, also den Wert beispielsweise von .

Xiaocai wollte die Informationen der Veranstaltung nutzen, um das Menü der nächsten Ebene festzulegen, aber diese scheinbar einfache Frage brachte Xiaocai durcheinander.

Wenn Sie sich ein wenig mit JQuery auskennen, können Sie es wie folgt versuchen:

Code kopieren Der Code lautet wie folgt:

$(document).ready(function(){
var onchangeValue = $("#city").attr("onchange");
alarm(onchangeValue);
});

Unter normalen Umständen kann dies tatsächlich abgerufen werden, da die universelle attr-Methode von JQuery jedes „Attribut“ im Tag abrufen kann. Auch wenn es sich um ein Ereignis handelt, kann der Inhalt hier direkt abgerufen werden.

In der tatsächlichen Entwicklungsumgebung kann Xiaocai jedoch nicht mit dieser Methode abgerufen werden, und alle abgerufenen Daten sind undefiniert.

Als ich Schwierigkeiten hatte, habe ich einen anderen Weg gefunden, es mit reinem JavaScript zu erhalten.

Der spezifische Code lautet wie folgt:

Code kopieren Der Code lautet wie folgt:

$(document).ready(function(){
var onchangeValue = document.getElementById("city").getAttributeNode("onchange").nodeValue;
alarm(onchangeValue);
});

Vereinfacht ausgedrückt wird hier hauptsächlich die Methode getAttributeNode () verwendet. Sie ruft den Attributknoten ab, ignoriert den Unterschied zwischen Attributen und Ereignissen, ähnlich wie bei der Verarbeitung von XML, und verwendet dann nodeValue, um den Knotenwert zu erhalten Attributknoten.

Wenn Sie die Methode getAttribute() verwenden, erhalten Sie ein Funktionsobjekt, das nicht als Zeichenfolge behandelt werden kann, da onchange ein Ereignis ist.

Ich hoffe, dass dieser Artikel bedürftigen Kinderschuhen helfen kann. . . . .

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn