首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取组合框的选定文本的PHP代码

获取组合框的选定文本的PHP代码
EN

Stack Overflow用户
提问于 2013-08-16 15:31:09
回答 5查看 153.8K关注 0票数 4

我有一个名为"Make“的组合框。在这个组合框中,我加载了车辆制造商的名称。当我点击搜索按钮时,我想要显示所选的制造商名称。下面是我HTML代码的一部分。

代码语言:javascript
复制
<label for="Manufacturer"> Manufacturer : </label>
<select id="cmbMake" name="Make" >
   <option value="0">Select Manufacturer</option>
   <option value="1">--Any--</option>
   <option value="2">Toyota</option>
   <option value="3">Nissan</option>
</select>

<input type="submit" name="search" value="Search"/>

下面是到目前为止我已经完成的PHP代码。

代码语言:javascript
复制
 <?php

if(isset($_POST['search']))
{
    $maker = mysql_real_escape_string($_POST['Make']);
    echo $maker;
    }
 ?>

如果我从组合框中选择丰田并按下搜索按钮,我得到的答案是'2‘。这意味着它给了我‘丰田’的价值。但是我想要显示‘丰田’的名字。我该怎么做呢?请帮帮我...

EN

回答 5

Stack Overflow用户

发布于 2013-08-16 16:48:27

试试这个。您将在$_POST‘’Make‘中获取选择框值,在$_POST’‘selected_text’中获取名称。

代码语言:javascript
复制
<form method="POST" >
<label for="Manufacturer"> Manufacturer : </label>
  <select id="cmbMake" name="Make"     onchange="document.getElementById('selected_text').value=this.options[this.selectedIndex].text">
     <option value="0">Select Manufacturer</option>
     <option value="1">--Any--</option>
     <option value="2">Toyota</option>
     <option value="3">Nissan</option>
</select>
<input type="hidden" name="selected_text" id="selected_text" value="" />
<input type="submit" name="search" value="Search"/>
</form>


 <?php

if(isset($_POST['search']))
{

    $makerValue = $_POST['Make']; // make value

    $maker = mysql_real_escape_string($_POST['selected_text']); // get the selected text
    echo $maker;
}
 ?>
票数 7
EN

Stack Overflow用户

发布于 2013-08-16 15:34:03

将您想要发送到PHP的任何内容放在value属性中。

代码语言:javascript
复制
  <select id="cmbMake" name="Make" >
     <option value="">Select Manufacturer</option>
     <option value="--Any--">--Any--</option>
     <option value="Toyota">Toyota</option>
     <option value="Nissan">Nissan</option>
  </select>

您还可以省略value属性。它默认使用文本。

如果您不想更改HTML,可以在PHP中放置一个数组来转换值:

代码语言:javascript
复制
$makes = array(2 => 'Toyota',
               3 => 'Nissan');

$maker = $makes[$_POST['Make']];
票数 5
EN

Stack Overflow用户

发布于 2013-08-16 15:43:04

您可以通过创建新数组来实现这一点:

代码语言:javascript
复制
<?php
$array = array(1 => "Toyota", 2 => "Nissan", 3 => "BMW");

if (isset ($_POST['search'])) {
  $maker = mysql_real_escape_string($_POST['Make']);
  echo $array[$maker];
}
?>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18268068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档