Php 如何将选项值传递给按钮

Php 如何将选项值传递给按钮,php,javascript,html,forms,variables,Php,Javascript,Html,Forms,Variables,我试图存储select/option中的变量,然后通过一个按钮访问它们,发送到一个javascript函数,该函数将过滤页面上的一些div 到目前为止,我已经让它在值更改时将值发送到过滤器。 以下是我的标记: <select name="Area" onchange="filter(this)"> <option selected>Select</option> <option value="Austin">Austin</o

我试图存储select/option中的变量,然后通过一个按钮访问它们,发送到一个javascript函数,该函数将过滤页面上的一些div

到目前为止,我已经让它在值更改时将值发送到过滤器。 以下是我的标记:

<select name="Area" onchange="filter(this)">
    <option selected>Select</option>
    <option value="Austin">Austin</option>
    <option value="San Antonio">San Antonio</option>
    <option value="Temple">Temple</option>
</select>
<select name="Number" onchange="filter(this)">
    <option selected>Select</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>
<a class="button">Submit</a>
但是如何存储所有选项中的值,然后发送它们呢 一次完成所有功能


编辑:换句话说,我如何存储每个选项的值,并且只在它们单击提交后发送到函数

为每个选择赋予一个id属性,如:

<select name="Number" onchange="filter(this)" id="Number">
...

作为旁注,在HTML标记中使用onchange附加事件处理不是最佳实践。从quirksmode可以很好地解释其他解决方案。但是,需要考虑跨浏览器的主要因素,这就是为什么大多数人更喜欢使用Javascript框架,以便最大程度地缓解这些问题。

为每个用户选择一个id属性,如:

<select name="Number" onchange="filter(this)" id="Number">
...

作为旁注,在HTML标记中使用onchange附加事件处理不是最佳实践。从quirksmode可以很好地解释其他解决方案。但是,需要考虑跨浏览器的主要因素,这就是为什么大多数人更喜欢使用Javascript框架,以减少这些因素。

如果我没弄错,没有jQuery,您可以尝试以下方法:

document.getElementById("button").onclick = function() {
    var selects = document.body.getElementsByTagName("select");
    var data = [];

    for (var i = 0; i < selects.length; i++) {
        data.push(selects[i].value);
    }

    destinyFunction(data);
};

请处理这两个示例。

如果我没有弄错,没有jQuery,您可以尝试以下方法:

document.getElementById("button").onclick = function() {
    var selects = document.body.getElementsByTagName("select");
    var data = [];

    for (var i = 0; i < selects.length; i++) {
        data.push(selects[i].value);
    }

    destinyFunction(data);
};

请仔细阅读这两个示例。

提交按钮时您需要什么,将选项值传递到按钮中,或者您的期望值是什么?提交按钮时您需要什么,将选项值传递到按钮中,或者您的期望值是什么?正是如此!我知道我必须使用数组,以及某种函数onclick——我只是不知道如何将它们组合在一起。这帮了大忙,谢谢@BrunoVeiga很不错,但是做一些修改使代码更好,它太通用了。对select值进行一些验证,并以更好的方式选择元素,而不是document.body.getElementsByTagName,这是一种糟糕的方式。就是这样!我知道我必须使用数组,以及某种函数onclick——我只是不知道如何将它们组合在一起。这帮了大忙,谢谢@BrunoVeiga很不错,但是做一些修改使代码更好,它太通用了。对select值进行一些验证,然后以更好的方式选择元素,而不是document.body.getElementsByTagName,这是一种糟糕的方式。