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

228
Views
Obtener la clave del diccionario de vista de Django en Javascript, pero en lugar de considerarlo una cadena, considera un nombre de variable

Estoy haciendo un proyecto en Django. En mis vistas, envío datos a las páginas HTML con diccionarios. Puedo acceder fácilmente a esos datos en HTML, pero cuando trato de acceder a ellos en Javascript no puedo porque Javascripts piensa que es un nombre de variable.

Por ejemplo, tengo una página de inicio de sesión. Si las credenciales están mal, las envío a la misma página y les digo que el usuario o la contraseña están mal. Quiero mantener el nombre de usuario escrito anteriormente en el formulario, para que la persona solo tenga que volver a escribir la contraseña. Envío el nombre de usuario desde la vista al Javascript, pero no puedo acceder a él.

Mi código de vista:

 def login_form(request): assert isinstance(request, HttpRequest) if 'username' and 'password' in request.POST: user = request.POST['username'] passw = request.POST['password'] if rightcredentials(user,passw): tparams = { 'message': 'login successful', } return render(request, 'about.html', tparams) else: tparams = { 'login' : 'failure1', 'username_info' : user } return render(request, 'login_form.html', tparams)

Código JavaScript:

 {% if login == 'failure1' %} <form action="." method="post"> {% csrf_token %} <div class="program-info"> <h3 class="program-title">Sign Into Your Account</h3> <p>Wrong Username or password</p> <div class="form-group"> <input type="text" value="" class="form-control" name="username" id="username" placeholder="Username"> </div> <div class="form-group"> <input type="password" class="form-control" name="password" placeholder="Password"> </div> <button type="submit" class="btn btn-primary">Log In</button> </div> </form> <script type="text/javascript"> {% autoescape off %} var paramvalue = {{ username_info }} {% endautoescape %} document.getElementById("username").value = paramvalue; </script> {%endif%}

Después de insertar el nombre de usuario: 'pedro' y la contraseña incorrecta en el formulario, aparece el siguiente error:

 Uncaught ReferenceError: pedro is not defined

¿Hay alguna forma de acceder a la cadena username_info o de convertir el nombre de la variable en una cadena?

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Envolver {{ }} entre comillas debería funcionar

 {% autoescape off %} var paramvalue = "{{ username_info }}" {% endautoescape %}
about 4 years ago · Santiago Trujillo Report
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!