Javascript 输入URL的进程部分
这个问题很简单,但我可能遗漏了一个很简单的问题 我有一个输入表单,用户将粘贴一个URL以导航到下一个部分 假设用户输入:https://www.facebook.com/connect/login_success.htmlaccess_token=XXXXXXXXXYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZAAAAAAAAAAAAAAAAAABBBBBBBBBBBB&expires_in=0 我希望表单只处理以下内容:XXXXXXXX YYYYYYYYYYYYYYYYYYYYYYYYYYYY ZZZZZZZZZZZZZZZZ AAAAAAAAAAAAABBBBBBBBBB 因此,它将完全忽略:Javascript 输入URL的进程部分,javascript,php,html,twitter-bootstrap,Javascript,Php,Html,Twitter Bootstrap,这个问题很简单,但我可能遗漏了一个很简单的问题 我有一个输入表单,用户将粘贴一个URL以导航到下一个部分 假设用户输入:https://www.facebook.com/connect/login_success.htmlaccess_token=XXXXXXXXXYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZAAAAAAAAAAAAAAAAAABBBBBBBBBBBB&expires_in=0 我希望表单只处理以下内容:XXXXXXXX YYYYYYYYYYYYY
https://www.facebook.com/connect/login_success.html#access_token=
及
这可能吗
我的表格非常简单:
<form action="home.php" method="GET">
<div class="form-group">
<label for="exampleInputEmail1">Access Token.</label>
<input type="text" class="form-control" id="exampleInputEmail1" name="accesstoken"/>
</div>
<button type="submit" class="btn btn-default btn-block">Confirm</button>
</form>
引导
谢谢 您可以对符号“&”进行分解,并将其粘贴到字符串或变量中 将表单更改为使用POST,如下所示:
<form action="home.php" method="POST">
<div class="form-group">
<label for="exampleInputEmail1">Access Token.</label>
<input type="text" class="form-control" id="exampleInputEmail1" name="accesstoken"/>
</div>
<button type="submit" class="btn btn-default btn-block">Confirm</button>
</form>
<?php $accesstoken = $_GET['accesstoken']; ?>
然后,您可以在PHP中检索变量,如下所示:
<form action="home.php" method="POST">
<div class="form-group">
<label for="exampleInputEmail1">Access Token.</label>
<input type="text" class="form-control" id="exampleInputEmail1" name="accesstoken"/>
</div>
<button type="submit" class="btn btn-default btn-block">Confirm</button>
</form>
<?php $accesstoken = $_GET['accesstoken']; ?>
它可以很容易地回送到JavaScript变量中供您使用。首先,我建议您在服务器端解析它,而不是关闭客户端JavaScript等。。若您需要在home.php上使用accesstoken作为GET参数,则可以在提交后将用户重定向到此处。无论如何,在服务器端,请尝试以下方法: 注1:我假设您在第一篇文章中的URL的类型不是?。如果没有,只需使用与我发布的脚本相同的脚本,但将$urlParts['query']更改为$urlParts['fragment'] 注2:如果您真的想/需要使用JavaScript,请查看
注3:处理URL操作的另一个很好的JS库似乎是。我找到了一个更简单的解决方案:
<script>
$(document).ready(function() {
$('#btnSubmit').click(function(e) {
var val = document.getElementById('exampleInputEmail1').value;
$('#exampleInputEmail1').val(val.substring(val.indexOf("=") + 1, val.indexOf('&')));
});
});
</script>
在服务器上处理URL。另外,不要使用GET和use提交表单POST@JoshuaBrodie什么意思?我以后会用的,谢谢!URL应该类似于login\u success.html?access\u token=XYZAB&expires\u in=0,以便通过GET识别。注意,哈希符号已替换为问号。如果您无法这样做,则可以将URL保存到变量中,并使用字符串函数替换为?谢谢,表单已更新,我将如何实现您提到的PHP部分,然后只处理访问令牌?@Billy:login\u success.htmlaccess\u token=。它不是.html?访问令牌!它的登录成功。htmlaccess\u token=Not?access\u token我现在尝试使用它,但仍然不走运,我是否遗漏了一些非常明显的东西?哦,对不起,我的脚本中有错别字,第9行是accesstoken而不是access\u token。我只是测试了一下,它适用于和?同样,请按照我的说明1。@Pavelětěrba您有其他方式可以联系您吗?我真的很想解决这个问题,非常感谢