Como eu mudo um valor de arquivo oculto de acordo com qual rádio selecionado

Tenho em um file HTML.twig :

1- um arquivo oculto deve levar 3 valores de acordo com o rádio selecionado, um do meu database e outros dois arquivos hiden os valores do número 10, como este:

    

2- E eu tenho 3 radioBox:

    

3- Eu fiz um bloco de JavaScript no mesmo arquivo HTML.Twig Eu criei uma function para obter o valor de cada rádio:

 {% block javasc %}  function valueLt(){ var spare= document.getElementById('spa-price'); var repair= document.getElementById('rep-price'); var test= document.getElementById('tes-price'); if (repair.checked){ // Should take the value 10 alert("repair checked"); // } else if (test.checked){ // Should take the value 10 alert("test checked"); // } else { alert("spare checked"); // should take the value from DB //  }  {% endblock %} 

Você pode me dizer como eu mudo o valor do meu arquivo oculto de acordo com cada rádio selecionado na function? Obrigado.

Mude os valores de nome das inputs ocultas

    

Adicione as seguintes linhas às cláusulas apropriadas caso existam:

 document.querySelector("input[data-id='spare']").value = spare.value; document.querySelector("input[data-id='repair']").value = repair.value; document.querySelector("input[data-id='test']").value = test.value; 

Estou apresentando propriedades de data únicas nos hiddens. Desta forma, você pode selecioná-los usando document.querySelector e atribuir o valor correto.

Você pode selecionar facilmente elementos HTML com o CSS-selectors document.querySelector e CSS-selectors

Primeiro você precisa alterar o nome da sua input oculta para poder selecioná-los independentemente um do outro:

    

Eu também removi o valor, já que esses serão adicionados pelo javascript mais tarde.

    

Eu notei um erro em seus rádios, uma vez que os dois últimos tinham o mesmo nome, você não seria capaz de diferenciá-los em seu JS e eu também adicionei um atributo onchange() para desencadear sua function.

  

Aqui, adicionamos variables ​​para selecionar sua input oculta que agora é distinta. Então, em seu if mudou a input desejada para o valor de seu rádio, também estabelecemos os outros dois para 10.

  {% block content %}     {% endblock %} {% block javascript %}  {% endblock %}