从“选择性别”下拉列表中选择“ID”


select id from the select gender dropdown list

我有一个性别下拉列表。我正在从我的表"候选"中获取值,在这个表中我有一个字段,它实际上是另一个表的外键。

字段为gender_code_cde,表名为gender_code。现在gender_code包含 2 行。以及 ID 和描述。它的结构是这样的:

1-> 外螺纹2->母头

它显示在下拉列表中。 但如果选择男性,我想获得 id 1,如果选择女性,我想获得 id 2。我的代码如下:

<p>
<label for ="gender">Gender:</label>
<?php
   $query = mysql_query("select * from gender_code"); // Run your query
   echo '<select name="GENDER">'; // Open your drop down box
   //Loop through the query results, outputing the options one by one
   while ($row = mysql_fetch_array($query)) 
  {
     echo '<option value="'.$row['gender_cde'].'">'.$row['gender_dsc'].'</option>';
  }
  echo '</select>';
?>
</p>

我正在使用代码点火器。

//每当下拉列表发生变化时,这将提醒其值

<script>
function getvalue(val)
{
   alert(val);
}
</script>
    <p>
    <label for ="gender">Gender:</label>
    <?php
       $query = mysql_query("select * from gender_code"); // Run your query
       echo '<select name="GENDER" id="Gender" onchange="getvalue(this.value)">'; // Open your drop down box
       //Loop through the query results, outputing the options one by one
       while ($row = mysql_fetch_array($query)) 
      {
         echo '<option value="'.$row['gender_cde'].'">'.$row['gender_dsc'].'</option>';
      }
      echo '</select>';
    ?>
    </p>

在 Javascript 中,你可以用原生 JS 获取值。

var e = document.getElementById("give-the-select-element-an-id");
var gender_cde = e.options[e.selectedIndex].value;

如果你想让它回到服务器上,它将以$_GET['GENDER']$_POST['GENDER']的形式进入PHP,这取决于表单是执行POST还是GET请求。

如果您要提交(POST)表单,并且该表单位于该表单中,则可以从CodeIgniter的$_POST包装器访问值(id):$this->input->post('GENDER');。我不使用 CodeIgniter,所以我可能是错的,但它将位于 PHP 的$_POST数组中。

如果您只想将变量复制到页面上的某个位置,则可以echo它。或者通过 js/jQuery 使用 document.getElementById('#something').value = value;jQuery('#something').html(value); 进行设置。

您还应该更改以下内容:

  • 使用foreach代替您的 while:

    foreach ($query as $row) {
        echo $row['gender_x'] . $row['gender_y'];
    }
    
  • 使用 CodeIgniter SQL 包装器而不是已弃用的 PHP 函数。查询部分$this->db->query('SELECT statement goes here');。您应该查看 CodeIgniters 的版本文档以获得更深入的解释。

编辑:为了使它更清楚一点,一个例子:

$query = $this->db->query('SELECT * FROM gender_code');
foreach ($query->result() as $row) {
    echo '<option value="' . $row->gender_cde . '">' . $row->geneder_dsc . '</option>';
}

这是假设您已经在 CodeIgniter 中设置了以前的调用。请参阅 http://ellislab.com/codeigniter/user-guide/database/examples.html,您可能希望阅读 http://ellislab.com/codeigniter/user-guide/