我怎么得到选择值而不是php中的选项值

时间:2014-12-13 06:48:52

标签: javascript php jquery html

嗨,有人可以帮我解决问题。

我有一个html和php函数,我想要的是回显一个选择值而不是选项值

这是我的代码 输出:帕特里克或我选择并发送按钮时的任何名称

<?php if(isset($_REQUEST['send'])){echo $_POST['test'];}?>
<form method="post">
<select name="test"><option value="1">Patrick</option><option value="2">Maria</option><option value="3">Fe</option></select><input type="submit" name="send" value="submit">
</form>

6 个答案:

答案 0 :(得分:1)

<?php if(isset($_REQUEST['send'])){echo $_POST['test'];}?>

将您要显示的选项的值更改为

<form method="post">
    <select name="test">
        <option value="Patrick">Patrick</option>
        <option value="Maria">Maria</option>
        <option value="Fe">Fe</option>
    </select>
    <input type="submit" name="send" value="submit">
</form>

//将$ row ['id']更改为$ row ['name']

<?php $q = mysql_query("select * from name");?>
   while($row = mysql_fetch_assoc($q)){ 
     echo '<option value='.$row['name'].'>'.$row['name'].'</option>' ;
}

//确定你想在选项值中使用id。在你的提交代码中获取表格检查下面的代码

<?php if(isset($_REQUEST['send'])){$id=$_POST['test'];
$q = mysql_query("select * from name where id=$id");
$row = mysql_fetch_assoc($q);
echo $row['name'];
}

?>
<?php $q = mysql_query("select * from name");
      while($row = mysql_fetch_assoc($q)){ 
        echo '<option value='.$row['id'].'>'.$row['name'].'</option>' ;
}?>

答案 1 :(得分:0)

select的值将是选择的任何选项。如果我选择Maria,您将看到2显示。

答案 2 :(得分:0)

    <table cellpadding="3" cellspacing="3" align="center" width="50%">
        <tr>
            <td>
            <select name="user" id="user_id" onChange="selectuser()">
                <option value="0">Select User</option>
                <option value="1">Patrick</option>
                <option value="2">Maria</option>
                <option value="3">Fe</option>
            </select>
            </td>
        </tr>
    </table>

    <script language="javascript">
    function selectuser()
    {
        var name = $("#user_id option:selected").text();
        alert(name);
    }

答案 3 :(得分:0)

在此选项中指定值&#34; 1_Patrick&#34;

<?php if(isset($_REQUEST['send'])){
          $value = explode('_',$_POST['test']);
          echo $value[1];
         }

?>

<form method="post">
<select name="test"><option value="1_Patrick">Patrick</option><option value="2_Maria">Maria</option><option value="3_Fe">Fe</option></select><input type="submit" name="send" value="submit">
</form>

答案 4 :(得分:0)

当您发布任何表单时,该字段的value attribute中包含的数据将被发布。

因此,您可以将值数据更改为所需的值,例如value =&#34; Patrik&#34;

正如您所说,将数值数据添加到值后面的目的是我的建议是将此数字数据添加到其他自定义属性(如data-customid="1"等)并更改value="Patrick"

您可以在选项值中添加自定义属性。

有关详细信息,请参阅此link

答案 5 :(得分:0)

纯js:

DEMO

document.addEventListener('DOMContentLoaded', function() {

  document.querySelector('select').addEventListener('change', function() {
      alert(this.options[this.selectedIndex].innerText);
  }, false);

}, false);