Javascript 根据所选内容动态更新表单操作<;选项>;

Javascript 根据所选内容动态更新表单操作<;选项>;,javascript,html,Javascript,Html,所以,这就是我想做的。。我想要一个HTML下拉列表,带有一个提交按钮,根据下拉列表的值进行更改 所以,当我有这个: <select name="sizes" id="select13"> <option value="All">All</option> <option value="20x30">20x30</option> <option value="30x30">30x30</option> ... <

所以,这就是我想做的。。我想要一个HTML下拉列表,带有一个提交按钮,根据下拉列表的值进行更改

所以,当我有这个:

<select name="sizes" id="select13">
<option value="All">All</option>
<option value="20x30">20x30</option>
<option value="30x30">30x30</option>
...
</select>

全部的
20x30
30x30
...
我需要的是一个按钮,检查值是什么。如果值=20x30,则使用URL www.example.com/20x30

如果值为30x30,则使用URL www.example.com/30x30


我远非PHP专家,因此任何能让我走上正确方向的人都是救命恩人:)

您需要一个
onchange
事件来创建下拉列表:

document.getElementById("select13").onchange = function() {
    var currentVal = this.value;

    if (currentVal == "20x30") {
        //do stuff
    }
}

一些简单的Javascript就足够了:

<form id="FORM_ID" action="DEFAULT_ACTION">
    <select name="sizes" id="select13">
        <option value="All">All</option>
        <option value="20x30">20x30</option>
        <option value="30x30">30x30</option>
    </select>
</form>

<script type="text/javascript">
document.getElementById('select13').onchange = function(){
    document.getElementById('FORM_ID').action = '/'+this.value;
}
</script>

全部的
20x30
30x30
document.getElementById('select13')。onchange=function(){
document.getElementById('FORM_ID')。action='/'+this.value;
}
您可以尝试以下方法:

Javascript:

function goto() {
    window.location = "http://www.example.com/"+document.getElementById('select13').value;
}
<select name="sizes" id="select13">
    <option value="All">All</option>
    <option value="20x30">20x30</option>
    <option value="30x30">30x30</option>
</select>
<button onclick='goto()'>Go</button>
HTML:

function goto() {
    window.location = "http://www.example.com/"+document.getElementById('select13').value;
}
<select name="sizes" id="select13">
    <option value="All">All</option>
    <option value="20x30">20x30</option>
    <option value="30x30">30x30</option>
</select>
<button onclick='goto()'>Go</button>

另外,如果要提交表单,然后执行重定向。PHP代码如下所示:

<?php
    //Process your form without echoing anything before the header function.

    if($_REQUEST['sizes'] != 'All'){
        header('location:http://example.com/'.$_REQUEST['sizes']);
    }
    else{
        header('location:http://example.com/form.php');
    }

尝试查看javascript来实现这一点-php无法处理客户端更改只有一个人编辑了标题和标记,这是专门针对php解决方案提出的原始问题。这可以在php中通过返回重定向来实现。这个
选择
元素纯粹是为了导航吗?或者是在一个表单中,用户提交该表单以获得您的应用程序的处理?它是在一个表单中获得处理的。我认为这正是询问者正在寻找的。“提交按钮”我想他是指表单的操作目标。提交按钮只会转到表单操作。如果您不提供表单操作,那么该操作将成为当前URL注意:我的评论只是同意您的答案;)我以为你是OP,我的错这是最好的答案,如果
select
元素纯粹是为了导航。啊,效果很好:)但是,当value=all时,如何显示错误警报消息?我想强迫人们选择一些东西:)凯尔·威利斯问:“如果我想让动作成为‘mailto’,我应该在HTML中的‘动作’中添加什么?”