[英]Passing current page URL via hidden input field within form
我试图弄清楚如何通过隐藏字段传递当前页面的URL,以便在处理完表单的输入后可以重定向回该页面。 我尝试使用javascript:location.href,但是看起来好像它将作为文字字符串传递。
<input type="url" id="location" name="location" value="javascript:location.href" hidden />
查看页面源代码时,我可以看到此输入框的值为“ javascript:location.href”,而不是页面的URL。 这里有什么想法吗? 提前致谢!
您可以访问Javascript中的元素并在那里更改值
document.getElementById('location').value = location.href;
示例: http : //jsfiddle.net/6zxD5/
我认为这种方式不起作用。 您可以只在页面完全加载后使用onload回调将其插入:
<body onload="document.getElementById('location').value = document.location.href">
如果包含表单的文档已经是一个PHP文件,则可以执行
$yourPath = $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
在你的HTML中,你会做
echo '<input type="url" id="location" name="location" value="'.$yourPath.'" hidden />';
您可以使用JavaScript设置隐藏字段的值:
document.getElementById('location').value = window.location.href;
例:
https://jsfiddle.net/moogs/mhjh0je3/
由于您还标记了PHP,因此以下是PHP版本:
<input type="hidden" id="location" name="location" value="<?php echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; ?>" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.