javascript - 使用附加到同一 ID 的 HTML 按钮发送不同的值

标签 javascript php jquery html ajax

我正在制作小型 PHP 应用程序来检索一些分类记录。因为我需要在不重新加载页面的情况下动态检索 php 记录,所以我使用 JQuery 将 XMLHTTP 值发送到 PHP 脚本。在这个应用程序中,我有六个 HTML 按钮用于六个类别。和一个用于选择数字的选择框。当用户单击其中一个按钮时,它应该将按钮值和选择框值发送到另一个 PHP 脚本。因为我使用 jquery 来捕获按钮值,所以我必须将所有按钮 ID 设置为相同。所有按钮都有点击事件来触发 java 脚本功能。我的问题是,因为这六个按钮有六个不同的值,我如何通过 XMLHTTP 方法发送这些值?

这是我的HTML代码

<select id="number">
    <option value="30">30</option>
    <option value="60">60</option>
    <option value="90">90</option>
</select>
<button type="button" value="test1" id="btnval" onclick="loadXMLDoc()">test1</button>
<button type="button" value="test2" id="btnval" onclick="loadXMLDoc()">test2</button>
<button type="button" value="test3" id="btnval" onclick="loadXMLDoc()">test3</button>
<button type="button" value="test4" id="btnval" onclick="loadXMLDoc()">test4</button>
<button type="button" value="test5" id="btnval" onclick="loadXMLDoc()">test5</button>
<button type="button" value="test6" id="btnval" onclick="loadXMLDoc()">test6</button>
<button type="button" onclick="loadXMLDoc()">Search</button>

因为所有这六个按钮都具有相同的 ID Jquery 无法正确识别值

这是我的 jquery 代码

    function loadXMLDoc() {

        var xmlhttp;
        if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else { // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById("loadingDiv").innerHTML = xmlhttp.responseText;
            }
        }
        xmlhttp.open("GET", "test2.php?submit=" + btnval.value + "&datebetween=" + number.value, true);
        xmlhttp.send();
    }

如何将选择框值和六个不同的按钮值发送到 php 脚本?

这是我的前端界面示例 front end sample image

最佳答案

我不明白你为什么要发送“六个不同的按钮值到 php 脚本”:我想你的 php 代码只需要知道按下了六个按钮中的哪一个。

如果是这种情况,你不能简单地为你的函数添加一个参数吗

function loadXMLDoc(buttonPressed)

然后用不同的参数值修改每个按钮

<button type="button" value="test1" onclick="loadXMLDoc(1)">test1</button>
<button type="button" value="test2" onclick="loadXMLDoc(2)">test2</button>

等等?

关于javascript - 使用附加到同一 ID 的 HTML 按钮发送不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39673758/

相关文章:

JavaScript 函数不工作

javascript - 无法在 play_pause 处读取 null 的属性 'pause'

javascript - 用 JavaScript 计算直 Angular 三 Angular 形的边?

javascript - 了解 Service Worker 范围

php - 在提交之前验证表单,使用 jQuery post 到 javaScript,然后到确认页面

PHP 不执行并且不向数据库添加信息

javascript - 仅当 <select> 标签存在时,如何获取 <td> 内 <select> 的值?

javascript - 使用 Javascript 将 SVG 上传文件到 DOM 就绪元素

javascript - 使用 $ 和 { 时将 JSON 解析为 YAML 失败

php - 如何在 Windows XP 上安装适用于 php 5.3.5 的 openssl?