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

252
Views
¿Cómo puedo mostrar datos de js a html en django:TemplateSyntaxError en /pago No se pudo analizar el resto: '[$index]' from 'cardNumber[$index]'

Estoy creando una página de pago con tarjeta donde tiene una tarjeta y un cuadro de texto cuando escribo en el cuadro de texto, debería mostrarse en la tarjeta, pero estoy usando {{n < 10? '0' + n : n}} ,{{$index + minCardYear}} en HTML para obtener el número en la tarjeta con animación.

ingrese la descripción de la imagen aquí

 <div class="card-form__col"> <div class="card-form__group"> <label for="cardMonth" class="card-input__label">Expiration Date</label> <select class="card-input__input -select" id="cardMonth" v-model="cardMonth" v-on:focus="focusInput" v-on:blur="blurInput" data-ref="cardDate"> <option value="" disabled selected>Month</option> <option v-bind:value="n < 10 ? '0' + n : n" v-for="n in 12" v-bind:disabled="n < minCardMonth" v-bind:key="n"> {{n < 10 ? '0' + n : n}} </option> </select> <select class="card-input__input -select" id="cardYear" v-model="cardYear" v-on:focus="focusInput" v-on:blur="blurInput" data-ref="cardDate"> <option value="" disabled selected>Year</option> <option v-bind:value="$index + minCardYear" v-for="(n, $index) in 12" v-bind:key="n"> {{$index + minCardYear}} </option> </select> </div> </div>

Django me está dando el error de:

TemplateSyntaxError en /pago No se pudo analizar el resto: '[$index]' from 'cardNumber[$index]'

¿Cómo puedo resolverlo para que Django ignore esas partes y js debería leer eso?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No estoy familiarizado con Vue.js, pero sé que sus etiquetas de plantilla son las mismas {{ }} que el lenguaje de plantilla de Django, pero creo que puede sustituir los corchetes dobles [[ ]] definiendo el delimitador para que Vue ver la variable, pero Django la ignorará. Consulte este tutorial .

 <script> var app = new Vue({ delimiters: ['[[', ']]'], ... </script>

Luego en tu html:

 <div class="card-form__col"> <div class="card-form__group"> <label for="cardMonth" class="card-input__label">Expiration Date</label> <select class="card-input__input -select" id="cardMonth" v-model="cardMonth" v-on:focus="focusInput" v-on:blur="blurInput" data-ref="cardDate"> <option value="" disabled selected>Month</option> <option v-bind:value="n < 10 ? '0' + n : n" v-for="n in 12" v-bind:disabled="n < minCardMonth" v-bind:key="n"> [[ n < 10 ? '0' + n : n ]] </option> </select> <select class="card-input__input -select" id="cardYear" v-model="cardYear" v-on:focus="focusInput" v-on:blur="blurInput" data-ref="cardDate"> <option value="" disabled selected>Year</option> <option v-bind:value="$index + minCardYear" v-for="(n, $index) in 12" v-bind:key="n"> [[ $index + minCardYear ]] </option> </select> </div> </div>
about 4 years ago · Juan Pablo Isaza 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!