【问题标题】:Pass a javascript variable value into input type hidden value将 javascript 变量值传递给输入类型隐藏值
【发布时间】:2011-10-14 07:04:09
【问题描述】:

我想将两个整数的乘积值分配到 html 文档中已经存在的隐藏字段中。 我正在考虑获取 javascript 变量的值,然后将其传递给隐藏的输入类型。 我很难解释,但它应该是这样工作的:

脚本示例

 <script type="text/javascript">
 function product(a,b){
      return a*b;
 }
 </script>

上面计算产品,我希望产品在隐藏字段中。

<input type="hidden" value="[return value from product function]">

这怎么可能?

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    你可以给你的隐藏字段一个 id:

    <input type="hidden" id="myField" value="" />
    

    然后当你想分配它的值时:

    document.getElementById('myField').value = product(2, 3);
    

    确保在 DOM 完全加载后执行此分配,例如在 window.load 事件中。

    【讨论】:

      【解决方案2】:

      如果你已经有隐藏的输入:

      function product(a, b) {
         return a * b;
      }
      function setInputValue(input_id, val) {
          document.getElementById(input_id).setAttribute('value', val);
      }
      

      如果没有,您可以创建一个,将其添加到正文中,然后设置它的值:

      function addInput(val) {
          var input = document.createElement('input');
          input.setAttribute('type', 'hidden');
          input.setAttribute('value', val);
          document.body.appendChild(input);
      }
      

      然后你就可以使用(视情况而定):

      addInput(product(2, 3)); // if you want to create the input
      // or
      setInputValue('input_id', product(2, 3)); 
      

      【讨论】:

        【解决方案3】:

        你可以这样做:

        <script type="text/javascript">
             function product(a,b)
             {
             return a*b;
             }
            document.getElementById('myvalue').value = product(a,b);
         </script>
        
         <input type="hidden" value="THE OUTPUT OF PRODUCT FUNCTION" id="myvalue">
        

        【讨论】:

          【解决方案4】:

          隐藏字段:

          <input type="hidden" name="year" id="year">
          

          脚本:

          <script type="text/javascript">
               var year = new Date();
               document.getElementById("year").value=(year.getFullYear());
          </script>
          

          【讨论】:

            【解决方案5】:

            查看这个 jQuery 页面,了解如何使用 value 属性以及如何调用它的一些有趣示例:

            http://api.jquery.com/val/

            否则 - 如果您想使用 jQuery 而不是 javascript 将变量传递给任何类型的输入,请使用以下命令设置事件click()submit() 等:

            在某些事件上;分配或设置输入的值:

            $('#inputid').val($('#idB').text());
            

            地点:

            <input id = "inputid" type = "hidden" />
            
            <div id = "idB">This text will be passed to the input</div>
            

            使用这种方法,确保 html 输入显然没有指定值或禁用属性。

            在处理 html 表单时,请注意 .html().text() 之间的区别。

            【讨论】:

              【解决方案6】:

              为输入添加一些 id

              var multi = product(2,3);
              document.getElementById('id').value=multi;
              

              【讨论】:

                【解决方案7】:
                <script type="text/javascript">
                  function product(x,y)
                  {
                   return x*y;
                  }
                 document.getElementById('myvalue').value = product(x,y);
                 </script>
                
                 <input type="hidden" value="THE OUTPUT OF PRODUCT FUNCTION" id="myvalue">
                

                【讨论】:

                  【解决方案8】:
                  //prompts for input in javascript
                  test=prompt("Enter a value?","some string");
                  
                  //passes javascript to a hidden field.
                  document.getElementById('myField').value = test;
                  
                  //prompts for input in javascript
                  test2=prompt("Enter a value?","some string2");
                  
                  //passes javascript to a hidden field
                  document.getElementById('myField').value = test2;
                  
                  //prints output
                  document.write("hello, "+test+test2;
                  

                  现在这很令人困惑,但这应该可以工作......

                  【讨论】:

                  • 请尽量在您的答案中减少混淆:)
                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2023-03-03
                  • 1970-01-01
                  • 1970-01-01
                  • 2021-05-08
                  • 1970-01-01
                  • 2015-11-09
                  相关资源
                  最近更新 更多