我有一个有两个可能的类型(“ID”或“曲线”)HTML:表单上输入隐藏无线电提交
<form action="process.php">
<input type="radio" name="type" value="id">
<input type="radio" name="type" value="profile">
<input type="text" name="value" value="input">
</form>
所以基本上,我所得到的URL
/process.php?type=id&value=input
HTML表单
(或类型=轮廓,这取决于用户挑选什么)
我想是我的网址看起来像
/process.php?id=input
或
/process.php?profile=input
我有两个问题:
1)是以下的jQuery/JavaScript代码 “不好的做法”?我真的不觉得我做的正确,如果我做了下面的方法(尽管它的工作原理):
<input type="submit" onclick="formSubmit()">
<script>
function formSubmit() {
// if the first radio (id) is selected, set value name to "id", else "profile"
$("form input:text")[0].name = $("form input:radio")[0].checked ? "id" : "profile";
// disable radio buttons (i.e. do not submit)
$("form input:radio")[0].disabled = true;
$("form input:radio")[1].disabled = true;
}
</script>
2)是否有办法做到这一点,而无需使用htaccess的规则或JavaScript?
谢谢!
如果您使用PHP为什么不能用它来提交您的形式,而不是JavaScript,这意味着你的函数适用于带或不带JavaScript的所有用户。一个单选按钮的PHP表单的例子在这里http://www.homeandlearn.co.uk/php/php4p10.html –
@DominicGreen在process.php中,我可以轻松地检查两种类型的输入(id = input或idType = id&value = input)用于NoScript的人。事实上,我已经这样做了。编辑:谢谢参考,虽然 - 好主意! – JDelonge
为什么你想要你的网址看起来特定的方式?最终用户肯定不会在意或注意使用了什么确切的查询字符串。我认为将查询字符串单独放置并处理php文件中的所有内容会更好,因此下一个查看代码的人不会来找你。 –