Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

161
Visualizações
¿Cómo reemplazar todas las cadenas de marcador de posición __prefix__ dentro de Django Formsets elementos de forma vacía usando solo Javascript?

Los conjuntos de formularios de Django tienen un atributo empty_form .

formulario_vacío

BaseFormSet proporciona un atributo adicional empty_form que devuelve una instancia de formulario con un prefijo de __prefix__ para facilitar su uso en formularios dinámicos con JavaScript.

La documentación de Django en realidad no dice cómo reemplazar el __prefix__ con Javascript. Varios ejemplos en línea muestran cómo hacerlo con jQuery, pero específicamente quiero hacerlo con Javascript, no con jQuery .

Aquí está el HTML resultante de mi {{ formset.empty_form }} :

 <div id="prerequisiteEmptyForm"> <input type="text" name="prerequisites-__prefix__-text" maxlength="100" id="id-prerequisites-__prefix__-text"> <label for="id-prerequisites-__prefix__-DELETE">Delete:</label> <input type="checkbox" name="prerequisites-__prefix__-DELETE" id="id-prerequisites-__prefix__-DELETE"> <input type="hidden" name="prerequisites-__prefix__-id" id="id-prerequisites-__prefix__-id"> <input type="hidden" name="prerequisites-__prefix__-content" value="21" id="id-prerequisites-__prefix__-content"> </div>

En todas partes muestra __prefix__ , quiero reemplazarlo con un número... digamos 321 .

Solución correcta:

 <div id="prerequisiteEmptyForm"> <input type="text" name="prerequisites-321-text" maxlength="100" id="id-prerequisites-321-text"> <label for="id-prerequisites-321-DELETE">Delete:</label> <input type="checkbox" name="prerequisites-321-DELETE" id="id-prerequisites-321-DELETE"> <input type="hidden" name="prerequisites-321-id" id="id-prerequisites-321-id"> <input type="hidden" name="prerequisites-321-content" value="21" id="id-prerequisites-321-content"> </div>

Entonces mi pregunta se convierte en

Usando solo Javascript, ¿cómo reemplazo un valor constante ("__prefix__") con otra cosa ("321") en varios elementos (entradas y etiquetas) dentro de múltiples atributos (nombre, id)? Específicamente, quiero hacerlo limpiamente para repetibilidad. No quiero una solución altamente personalizada para este problema específico. Tiene que ser un enfoque general... ya que esto está reemplazando una constante, ¿seguramente Javascript tiene una forma limpia de hacer esto? Todavía estoy aprendiendo Javascript y tratando de no ser tan dependiente de jQuery.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Usé este concepto:

 const emptyForm = document.querySelector('#prerequisiteEmptyForm'); clone = emptyForm.cloneNode(deep=true); clone.innerHTML = clone.innerHTML.replace(/__prefix__/g, '321');
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda