使用Javascript将参数从URL传递到隐藏的表单字段

时间:2011-11-24 01:55:20

标签: javascript hidden-field

我无法从网址传递ID和'123456'这样的ID:

http://www.mysite.com/page.html?ID=123456

到隐藏的表单字段。

我发现了一个允许我将ID写入页面的Javascript,但我不知道如何将值添加到隐藏输入字段的value =“”位。

任何想法都非常感激!

我正在使用的JS是:

<script> 
function getQueryVariable(variable) { 
  var query = window.location.search.substring(1); 
  var vars = query.split("&"); 
  for (var i=0;i<vars.length;i++) { 
    var pair = vars[i].split("="); 
    if (pair[0] == variable) { 
      return pair[1]; 
    }
  } 
  alert('Query Variable ' + variable + ' not found'); 
}   
</script>

3 个答案:

答案 0 :(得分:1)

如果你已经拥有了jQuery所能达到的价值:

 $('#your-input-field').val(the_value);

 <input type="hidden" id="your-input-field" />

没有jQuery你会这样做:

 e = document.getElementById('your-input-field');
 e.value = the_value;

以下是使用您的代码的示例,我建议您查看jQuery - 它比普通的javascript更容易使用,并且您的代码适用于所有浏览器:

  <script type="text/javascript">
  function getQueryVariable(variable) { 
     var query = window.location.search.substring(1); 
     var vars = query.split("&"); 
     for (var i=0;i<vars.length;i++) { 
     var pair = vars[i].split("="); 
     if (pair[0] == variable) { 
       return pair[1]; 
     }
   } 
 }
 function onLoad() {
    var value = getQueryVariable("ID");
    var e = document.getElementById('your-field');
    e.value = value;
 }
 </script>
 <body onload="onLoad()">
     <!-- your form and hidden field goes here -->
     <input type="hidden" name="your-field" id="your-field" />

答案 1 :(得分:1)

window.location.search

...将为您提供网址

的查询字符串部分

所以在这种情况下,它将返回“?ID = 123456”。

还有其他什么还是足以继续下去?

答案 2 :(得分:0)

使用jquery的此链接可能会帮助您url-parameters。获得该值后,即可:

$('#input-id').val($.getUrlVar('url-parameter'));