我有一个性别下拉列表。我从我的表'候选'中获取值,在此表中我有一个字段,实际上是另一个表的外键。
该字段为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>
我在codeIgniter中工作。
答案 0 :(得分:0)
在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请求。
答案 1 :(得分:0)
//无论何时改变,都会提示下拉值
<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>
答案 2 :(得分:0)
如果您要提交(POST)表单并且这是在该表单中,您可以从CodeIgniter的$_POST
包装器$this->input->post('GENDER');
访问值(id)。我不使用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/