Heim  >  Artikel  >  Backend-Entwicklung  >  javascript – Problem beim asynchronen Laden von Ajax, Ereignisauslösung

javascript – Problem beim asynchronen Laden von Ajax, Ereignisauslösung

WBOY
WBOYOriginal
2016-12-01 01:27:471323Durchsuche

Ajax lädt einige Seiten (Zielseite) asynchron. Ich möchte eine Onclick-Funktion für die Schaltfläche festlegen, aber ich finde, dass sie immer 无法进行触发

ist

Logik: Front-End-JQueryload()(ajax asynchron) lädt die Seite, BTN wird auf der Zielseite platziert

Der Pseudocode lautet wie folgt: (Der Code ist ziemlich ausführlich, daher habe ich ihn durch Pseudocode ersetzt)

ajax.js:

<code class="javascript">$(function(){
  $(xxx).load(target-page);
  function a(){codes}
  setTimeout(function(){
    $(btn).click(a);
    // 用奇葩方法settimeout解决
  }, 0);
});</code>

Kann jemand helfen, die Prinzipien und richtigen Lösungen zu erklären??

Ich persönlich denke, das Problem besteht darin, dass das asynchrone Laden ausgelöst wird, nachdem der grundlegende JS-Inhalt (Variablen-/Funktionsdeklaration) geladen wurde, was dann zu Problemen führt, wie zum Beispiel, dass Elemente nicht abgerufen werden können

Antwortinhalt:

Ajax lädt einige Seiten (Zielseite) asynchron. Ich möchte eine Onclick-Funktion für die Schaltfläche festlegen, aber ich finde, dass sie immer 无法进行触发

ist

Logik: Front-End-JQueryload()(ajax asynchron) lädt die Seite, BTN wird auf der Zielseite platziert

Der Pseudocode lautet wie folgt: (Der Code ist ziemlich ausführlich, daher habe ich ihn durch Pseudocode ersetzt)

ajax.js:

<code class="javascript">$(function(){
  $(xxx).load(target-page);
  function a(){codes}
  setTimeout(function(){
    $(btn).click(a);
    // 用奇葩方法settimeout解决
  }, 0);
});</code>

Kann jemand helfen, die Prinzipien und richtigen Lösungen zu erklären??

Ich persönlich denke, das Problem besteht darin, dass das asynchrone Laden ausgelöst wird, nachdem der grundlegende JS-Inhalt (Variablen-/Funktionsdeklaration) geladen wurde, was später zu Problemen führt, z. B. dass Elemente nicht abgerufen werden können

Werfen wir einen Blick auf die Dokumentation: http://api.jquery.com/load/

Außerdem ist target-page keine Variable. Was ist das hier?

Referenzcode

<code class="javascript">// 第二个参数是 data,没有直接给 null,或者 {}
// 看文档中的例子,也可以省略掉,直接给 callback 作为第二个参数
$(xxx).load(url, function() {
    // do callback here
});</code>
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