我如何更改HTML.Twig文件中隐藏文件的值

时间:2017-04-14 14:11:49

标签: javascript php html twig

我有一个文件HTML.twig

1:一个one隐藏字段应该取3个值,根据哪个无线电选择,一个来自我的数据库,另外两个值是10。

<input type="hidden" name="lt_filed" value="{{ price.getLt }}" or "10" or "10">

2:3无线电盒

<input id="spa-price" name="price" class="w3-radio" onchange='valueLt();' value="Spare {{ price.getSparePrice }}" type="radio">
<input id="rep-price" name="price" class="w3-radio" onchange='valueLt();' value="Repair{{ price.getRepairPrice }}" type="radio">
<input id="tes-price" name="price" class="w3-radio" onchange='valueLt();' value="Test {{ price.getTestPrice }}" type="radio">

3:我在同一个文件HTML.Twig中做了一个块Javascript,我创建了一个函数来获取每个无线电的值,如下所示:

{% block javasc %}
<script>
        function valueLt(){
          var spare= document.getElementById('spa-price');
          var repair= document.getElementById('rep-price');
          var test= document.getElementById('tes-price');

          var hidden_filed =   document.getElementsByName("lt_filed");


          if (repair.checked){ // Should take the value 10
              alert("repair checked");
              hidden_filed.value = 10;

          } else if (test.checked){ // Should take the value 10 also
             alert("test checked");
             hidden_filed.value = 10;

          } else {
             alert("spare checked"); // should take the value from my database
             hidden_filed.value = {{ price.getLt }};// Here I can't recovred   the value from the Database

            }
        }
     </script>
{% endblock %}

您能告诉我如何通过Twig或javascript获取值{{ price.getLt }}吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

好吧,document.getElementsByName(param)函数没有返回元素实例,它返回一个元素数组。你应该选择第一个元素:

{% block javasc %}
<script>
        function valueLt(){
          var spare= document.getElementById('spa-price');
          var repair= document.getElementById('rep-price');
          var test= document.getElementById('tes-price');

          var hidden_filed =   document.getElementsByName("lt_filed")[0]; // CHANGE THIS LINE

          if (repair.checked){ // Should take the value 10
              alert("repair checked");
              hidden_filed.value = 10;

          } else if (test.checked){ // Should take the value 10 also
             alert("test checked");
             hidden_filed.value = 10;

          } else {
             alert("spare checked"); // should take the value from my database
             hidden_filed.value = {{ price.getLt }};// Here I can't recovred   the value from the Database

            }
        }
     </script>
{% endblock %}