如何一键发送两个值?

How can I send two values with one button?

是否可以通过一个按钮提交两个值?

$orderby = $_GET['orderby'];

<form action="mypage.php" method="get">
<a><button name ="orderby" value="name" type="submit">&#9660;</button></a>
<a><button name ="orderby" value="age" type="submit">&#9660;</button></a>
</form>

我想象的是这样的:

<a><button name ="orderby" value1="name" value2="ASC" type="submit">&#9660;</button></a>
<a><button name ="orderby" value1="name" value2="DESC" type="submit">&#9660;</button></a>
<a><button name ="orderby" value1="age" value2="ASC" type="submit">&#9660;</button></a>
<a><button name ="orderby" value1="age" value2="DESC" type="submit">&#9660;</button></a>

您可以将隐藏字段与 <input type="hidden"/> 一起使用:

<?php
    $orderby = $_GET['orderby'];
?>
<form action="mypage.php" method="get">
    <input type="hidden" name="field" value="fieldname"/>
    <input type="hidden" name="orderby" value="<?= $orderby ?>"/>
    <button name ="submit" value="1" type="submit">&#9660;</button>
</form>

通过URL例如

发送
<form action="mypage.php?orderby=name&order=ASC" method="get">
<a><button name ="orderby" value="name" type="submit">&#9660;</button></a>
</form>

你必须在表格内使用

<form>
<input type=hidden name=var1 value="value1">
<input type=hidden name=var2 value="value2">
<input type=hidden name=var3 value="value3">

如果要使用按钮获取值,可以使用jquery和ajax。下面给出示例代码

$(form).on('submit', function(e){
    e.preventDefault();
    var value1 = $('button[name=orderby]').attr('value1');
    var value2 = $('button[name=orderby]').attr('value2');
    $.ajax({
        url: 'your/url',
        type: 'POST',
        data: {
            value1: value1,
            value2: value2
        },
        success: function(data){
            //success action
        },
        error: function(){
            //error action
        }
    });
});

像“name ASC”或“name{splitter}ASC”一样使用并将其展开以在您的代码中使用

<a><button name ="orderby" value="name ASC" type="submit">&#9660;</button></a>
<a><button name ="orderby" value="name DESC" type="submit">&#9660;</button></a>
<a><button name ="orderby" value="age ASC" type="submit">&#9660;</button></a>
<a><button name ="orderby" value="age DESC" type="submit">&#9660;</button></a>

我认为这是解决您的问题的最佳方法。这就是所谓的程序员更智能和动态的东西。

你可以这样做:

HTML表格

<form action="mypage.php" method="get">
    <input type="radio" name="field" checked value="name"> Name
    <input type="radio" name="field" value="age"> Age<br/><br/>

    <input type="radio" name="order" checked value="desc"> DESC
    <input type="radio" name="order" value="asc"> ASC<br/><br/>

    <a><button name="orderby" value="orderby" type="submit">&#9660;</button></a>
</form>

mypage.php

必须使用 isset 提交和其他安全措施。

$field = $_GET['field'];
$order = $_GET['order'];

一切准备就绪,随心所欲。