Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

140
Views
document.ready no funciona en Ajax creó nuevas páginas de matraz

Soy nuevo en la interfaz y he estado trabajando en esta aplicación durante cuatro días con Flask. Busqué en el sitio y probé todos los métodos, incluido $(".selector").on() y otras cosas, pero no pude resolver el problema.

Básicamente, hay tres plantillas en mi aplicación, la primera recibirá información de entrada y creará una subpágina con la segunda plantilla, y esta subpágina aceptará otra información y creará una sub-subpágina con la tercera plantilla.

El problema es que no puedo activar el evento de clic en la sub-subpágina.

En la segunda plantilla para la subpágina, tengo el código a continuación usando $.ajax post y puedo entregar información y usar la información publicada para crear la sub-subpágina usando la tercera plantilla y su ruta.

El código en la segunda plantilla.

 window.onload = init; function init(){ var button1 = document.getElementById("button"); button1.onclick = create_sub_subpage; }; $(document).ready(function(){ //other statements used $.getJSON to get select list from python Flask }; // code to send data to Flask function create_sub_subpage(){ $.ajax({ url: "create_sub_subpage", type: "post", data: ..., success: function(result){ alert("foo") } }) }

Y el código Flask para recibir y crear_sub_subpágina está a continuación:

 @app.route('<sub_page>/<page>') def render_third_page(sub_page, page): return render_template("third.html") @app.route('/create_sub_subpage', methods=['GET', 'POST']) def create_sub_subpage(): if request.method == 'POST': posted = request.get_json(force = True) page = posted['page'] sub_page = posted['sub_page'] render_third_page(sub_page, page) return jsonify({'msg':'finish'})

El código de las terceras plantillas que no se pudo activar es el siguiente:

 window.onload = init; function init(){ ... // no $.ajax }; $(document).ready(function(){ alert("ready"); // not executed var a = document.getElementById("test"); a.onclick(function(){ alert("clicked"); }); });

La primera plantilla usó básicamente la misma lógica para crear la subpágina, pero la segunda plantilla funciona bien.

Intercambié la segunda y la tercera plantilla, y la alerta y el clic funcionan bien, así que me preguntaba si el problema se debió a la estructura de la segunda plantilla. ¿Tiene algo que ver con $.ajax? ¿Por qué document.ready no funciona en mi tercera plantilla?

Perdóneme si usé palabras poco profesionales porque todavía no estoy capacitado profesionalmente.

Muchas gracias por tus consejos y soluciones!!!

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!