Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

257
Vistas
Actualización de la tabla después de realizar la solicitud POST de ajax

Estoy haciendo una solicitud POST de ajax a matraz de python como se muestra a continuación.

 function humval(val1,val2){ var dict = {"url":$('#url'+val1).val(),"status":val2}; $.ajax({ url: '/testroutez', contentType: 'application/json;charset=UTF-8', data : JSON.stringify(dict), type: 'POST', success: function(response){ alert('success'); console.log(response); }, error: function(error){ alert('error occured'); console.log(error); } }); }

El código html maneja el formato jinja

 <tbody> {% for value in myData %} <tr> <td class="urlTd"> <input class="form-check-input" type="checkbox" value="" id="flexCheckDefault"> {{ value["url"] }} </td> <td>{{ value["org"] }}</td> <td>{{ value["val_date"] }}</td> <td> <input type="hidden" value="{{value['url']}}" id='url{{ loop.index }}'> <input type="button" onclick="humval('{{ loop.index }}','valid')" type="button" class="far fa-check-circle hButton" id="hvalid"> <input type="button" onclick="humval('{{ loop.index }}','invalid')" type="button" class="fas fa-times-circle hButton" id="hinvalid"> </td> </tr> {% endfor %} </tbody>

el código del matraz es

 @data_sources_api.route('/testroutez', methods=["POST"]) def testroutez(): if loggedin(): if request.method== 'POST': print("request received") data_json = request.get_json() result_l = MlData.objects(hum_proc='null') myData = mldatas_schema.dump(result_l) return render_template('users/validation.html', myData = myData)

Lo que se intenta es volver a renderizar la plantilla con el nuevo valor myData. Pero a medida que la solicitud pasa de ajax, no funcionará y nuevamente se actualizará toda la página. Pero quiero que la tabla solo se actualice con nuevos valores. como es posible hacer eso

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Jinja no admite contenido de página dinámico (esto se debe a que la plantilla se representa solo una vez cuando se carga la página), lo que significa que si sus datos cambian, debe encargarse de actualizarlos. Para hacer esto, tiene dos posibilidades, la primera es actualizar la página, la segunda es solicitar los datos actualizados del servidor y, a través de javascript, actualizar el contenido de la tabla dentro de su página html, eliminando todos los registros y llenándolo con los nuevos datos devueltos por el servidor.

Eche un vistazo al siguiente enlace: Mostrar datos transmitidos desde una vista de Flask a medida que se actualiza

over 4 years ago · Santiago Trujillo Denunciar

0

location.reload() resolverá el problema de actualización

Entonces la solicitud de ajax será como a continuación

 function humval(val1,val2){ var dict = {"url":$('#url'+val1).val(),"status":val2}; $.ajax({ url: '/testroutez', contentType: 'application/json;charset=UTF-8', data : JSON.stringify(dict), type: 'POST', success: function(response){ location.reload(); // alert('success'); console.log(response); }, error: function(error){ alert('error occured'); console.log(error); } }); }

No estoy seguro de si este es el camino correcto. Si hay algo mejor, los estoy esperando.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda