Ich habe eine Seite wie folgt definiert:Warum ist meine Callback-Funktion nicht definiert?
<body>
<div id="container">
<p>
<input id="myButton" type=button onclick=window.open('LandingPage.html'); value="Launch Search App">
</p>
</div>
<script>
function cb(msg) { console.log(msg); }
myButton.addEventListener('click', cb);
</script>
</body>
Diese Seite zum Einrichten einer Callback-Funktion für eine sekundäre Seite verantwortlich ist. Die Callback-Funktion scheint eingerichtet zu sein, zumindest nach F12-Entwicklertools, wo ich ein PointerEventPrototype
erstellt sehe. Die PointerEventPrototype
ist nicht vorhanden, wenn ich die Zeile ausschließe, die die addEventListener()
enthält, die den Rückruf einrichtet, also glaube ich, dass es so weit funktioniert.
<body>
<div id="container">
<p>
<input type=button value="Save" onclick="click_function()">
</p>
</div>
<script>
function click_function() {
var message = "Save button clicked!";
console.log(message);
cb(message);
}
</script>
</body>
Die zweite Seite enthält eine Schaltfläche Speicher, die an dem Callback-Funktion Setup auf der ersten Seite reagieren sollten:
Klick auf die Schaltfläche auf der ersten Seite startet ein weiteres Fenster, um die zweite Seite enthält, unten . Wenn auf die Schaltfläche Speichern geklickt wird, "Speichern Schaltfläche geklickt!" wird an die Konsole ausgegeben, aber die folgende Zeile, cb(message)
, löst einen Fehler aus, der besagt, dass cb
nicht definiert ist. Wie kann das undefiniert sein? Muss ich die Callback-Funktion mit einer anderen Syntax aufrufen?
Ihre 'cb()' Funktion ist auf einer Seite definiert, und Sie versuchen, sie von einer * anderen * Seite aufzurufen. – Pointy
Ihre beiden Funktionen sollten auf derselben Seite definiert werden. –