我想将两个值从一个URL传递给一个简单的HTML表单。最简单的方法是什么?我找到了一个值的答案,但我不是很擅长JS,所以我没能适应它们:(
这是使用valuescom
的网址www.myurl.be?title=titlevalue&startdate=startdatevalue
这些是字段
<span>
<label for="title" class="fixed">Title</label>
<input name="title" id="title" size="50"/>
</span> <span></span><br>
<span>
<label for="startdate" class="fixed">Vertrekdatum</label>
<input name="startdate" id="startdate" size="50"/>
</span>
答案 0 :(得分:0)
使用PHP可以轻松读取Url参数。
<?php
$title = $_GET['title'];
$startdate = $_GET['startdate'];
?>
确保您的网络托管服务商首先支持PHP。 (他们中的大多数都这样做)
答案 1 :(得分:0)
正如Uncertified Robot所说,你可以通过PHP获取URL中的参数。
您也可以使用Javascript:
执行此操作<script language="JavaScript">
var parameters = location.search.substring(1).split("&");
console.log(parameters);
var temp = parameters[0].split("=");
title = unescape(temp[1]);
console.log(title);
temp = parameters[1].split("=");
startdate = unescape(temp[1]);
console.log(startdate);
</script>
有了这个,你可以在JS变量中获得你的价值。
如果要用表格填写表单中的输入值。你可以试试这个
<script>
var formTitle = document.getElementById("title");
if (formTitle) {
formTitle.value = title;
}</script>
答案 2 :(得分:0)
使用此JavaScript
函数获取QueryStrings;只需使用参数名称调用该函数,将返回参数值: -
<script type="text/javascript">
function getQueryString(string) {
var params = location.search.substring(1).split("&");
for (var i = 0; i < params.length; i++) {
var temp = params[i].split("=");
if (string == temp[0]) {
return temp[1];
}
}
}
function go() {
document.getElementById("title").value= getQueryString("title");
document.getElementById("startdate").value= getQueryString("startdate");
}
</script>
然后,在function
go()
致电body
onload
: -
<body onload="go()">
//your content
</body>
答案 3 :(得分:0)
以前的脚本在IE9中有问题。这个脚本完成了这项工作。
<script type="text/javascript">
$().ready(function() {
// get URL variables
var hashParams = window.location.search.toString().substr(1).split('&');
for(var i = 0; i < hashParams.length; i++){
var p = hashParams[i].split('=');
document.getElementById(p[0]).value = decodeURIComponent(p[1]);;
}
});
</script>