例如,网站https://talky.io/在其主页上有一个表单。当您在表单中输入文本并点击按钮时,您将进入https://talky.io/ [您的文本]页面。你怎么做到这一点?最好的方法是什么?
谢谢!
答案 0 :(得分:1)
您可以使用onSubmit
并通过javascript更改表单的action
属性,然后返回true。代码可能如下所示:
HTML:
<form id="createRoom">
<input id="sessionInput" placeholder="Name the conversation" autofocus="autofocus">
<button type="submit">Let’s go!</button>
</form>
Js代码:
document.getElementById("crateRoom").onsubmit = function(){
var url = encodeURIComponent(document.getElementById("sessionInput").value);
document.getElementById("crateRoom").action = "/" + url;
return true;
}
答案 1 :(得分:0)
这是服务器端脚本作业。您可以查看一些MVC框架和url参数
答案 2 :(得分:0)
如果您使用.net,则可以使用PHP symfony或codeignitor,然后创建一个新的MVC项目。
但是如果你只需要改变像
这样的网址www.mysite.com/mypage.php?something=value
到
www.mysite.com/value
您可以在apache中执行mod rewrite,或者如果您使用的是.net,请在global.asax.cs中使用RegisterRoutes
答案 3 :(得分:0)
您可以使用表单的GET方法;例如:
<form action="index.php" method="get">
Page: <input type="text" name="page">
<input type="submit" value="Submit">
</form>
提交后将转到index.php?page=yourEnteredPage
。
答案 4 :(得分:0)
使用form
您可以将数据提交给for的location/url
属性中提供的action
,例如
<form method="POST" action="http://example.com">
<input name="first_name" type="text" value="" />
<!-- Form elements -->
<input type="submit" name="mySubmitButton" value="Submit">
</form>
此表单会在按下提交时将表单数据提交给给定的action
网址,并且可以使用
$first_name = $_POST['first_name';];
等等。方法POST
用于在帖子数组中提交表单,以便您可以使用$_POST['formfieldname']
检索数据,如果您使用method="GET"
,则可以从$_GET
变量获取提交的数据,像,$fname=$_GET['first_name']
。提交数据时GET
具有数量限制(最多可安全使用2000个字符IE's limit
)并且浏览器的address bar
可见并且不用于登录(密码)和{{ 1}}可以发送比POST
更多的数据,也不会对地址栏显示。
You may read this.
答案 5 :(得分:0)
使用URL重写非常可行 http://en.wikipedia.org/wiki/Rewrite_engine