Necesito ayuda para enviar datos de variables derivadas en JavaScript a la ruta Flaks. Tengo un botón de envío, en el que tengo una ruta de matraz y estoy pasando variables encerradas en {{}}.
Uno de los elementos seleccionados variables se deriva dentro de JavaScript. Obtengo el valor correcto en alerta, pero cuando se llama a la ruta, aparece como Ninguno. ¿Estoy haciendo algo mal aquí? ¿Puede ser que el envío html no pueda hacer referencia a la variable JavaScript? Si paso un valor codificado a mi parámetro de ruta, funciona bien.
Por favor ayuda. Gracias
function test_alert(e){ alert("es una prueba"+e.value) elemento seleccionado=e.value; }Si desea transferir su variable javascript a su ruta de matraz, consulte mi respuesta aquí:
¿Por qué mis datos provienen de request.form cuando los paso al backend en Flask, python?
JavaScript
var your_data = { /* name */ : /* value */ } fetch(`${window.origin}/your_url`, { method: "POST", credentials: "include", body: JSON.stringify(your_data), cache: "no-cache", headers: new Headers({ "content-type": "application/json" }) })
Pitón
@app.route("/your_url", methods = ["post"]) def printer(): data = request.get_json() print(data) return "TODO"
Sin embargo, si desea representar una plantilla (como lo haría un envío de formulario), puede hacer esto:
A. Hacerlo dentro de una forma oculta
HTML
<form id="mainform" action="/your_url" method="post"> <input type="hidden" name="jsvar" id="jsvar" value="" /> <button type="submit">Click Me</button> </form>
JavaScript
var form = document.getElementById("mainform") var input = document.getElementById("jsvar") form.addEventListener('submit', function(e){ input.value = "your_var" form.submit() })
Pitón
@app.route("/test",methods=["POST"]) def proposeswap_db_function(): print("inside function") data = request.form["jsvar"] print(data) print('rendering mainmenu') return f"{data}"