PHP获取下拉值和文本

时间:2011-07-12 19:35:30

标签: php drop-down-menu

<select id="animal" name="animal">                      
<option value="0">--Select Animal--</option>
<option value="1">Cat</option>
<option value="2">Dog</option>
<option value="3">Cow</option>
</select>

if($_POST['submit'])
{
$animal=$_POST['animal'];
}

我有这样的下拉菜单。我想要的是,我希望使用 PHP 在按钮提交中获取选定的值和文本。我的意思是如果它被选为第一个。我希望同时获得 1 Cat

请帮忙。谢谢。

4 个答案:

答案 0 :(得分:15)

你有没有理由不使用它?

<select id="animal" name="animal">                      
  <option value="0">--Select Animal--</option>
  <option value="Cat">Cat</option>
  <option value="Dog">Dog</option>
  <option value="Cow">Cow</option>
</select>

if($_POST['submit'] && $_POST['submit'] != 0)
{
   $animal=$_POST['animal'];
}

答案 1 :(得分:13)

$animals = array('--Select Animal--', 'Cat', 'Dog', 'Cow');
$selected_key = $_POST['animal'];
$selected_val = $animals[$_POST['animal']];

使用$ animals列表生成下拉列表;你现在可以得到关键&amp;该键的值。

答案 2 :(得分:1)

您必须在服务器端保存关系。该值是发布表单时传输的唯一部分。你可以做一些讨厌的事情......

&lt; option value =“2 | Dog”&gt; Dog&lt; / option&gt;

然后将结果分开,如果你真的想要,但这是一个丑陋的黑客和浪费带宽,假设数字是真正独特的,并与文本有一对一的关系。

最好的方法是创建一个数组,并在数组上循环以创建HTML。发布表单后,您可以使用该值在同一数组中查找文本。

答案 3 :(得分:1)

你可以使用js文件和ajax调用来实现它。在使用js文件验证数据时,我们可以读取所选下拉列表的文本

$("#dropdownid").val();   for value
$("#dropdownid").text(); for selected value

将这些变量捕获到两个变量中并将其作为对php文件的ajax调用的输入

$.ajax 
   ({
     url:"callingphpfile.php",//url of fetching php  
     method:"POST", //type 
     data:"val1="+value+"&val2="+selectedtext,
     success:function(data) //return the data     
     {

}

在php中你可以把它作为

    if (isset($_POST["val1"])) {
    $val1= $_POST["val1"] ;
}

if (isset($_POST["val2"])) {
  $selectedtext= $_POST["val1"];
}