[英]PHP - MySQL : how to get item_id in the same page when i select the item_name in option dropdown
單擊下拉列表中的item_name
列表之一時,需要顯示item_id
。 當我單擊提交時, $_POST
獲得item_name
和item_id
。 javascript可以做到這一點嗎?
<?php
$brg="SELECT item_id, item_name FROM tblItem";
$b=mysql_query($brg);
?>
<td align="center">
<select name="item_name">
<?php while($br=mysql_fetch_array($b)){ ?>
<option value=<?echo $br[0].'_'.$br[1]?> selected>
<?php echo $br[1]; ?>
</option>
<?php } ?>
</select>
</td>
Jup,使用Javascript可以實現。
您的HTML:
<select name="item_name">
<option value="1_Cheese">Cheese</option>
<option value="2_Cars">Cars</option>
<option value="3_Planes">Planes</option>
</select>
<input type="button" onclick="alert(getSelectedValue())" value="Get Select Id" />
還有您的Javascript,可從options值訪問ID:
function getSelectedValue()
{
var sel = document.getElementsByName('item_name')[0];
return sel.options[sel.selectedIndex].value.split("_")[0];
}
看到這個小提琴: http : //jsfiddle.net/acz6Q/
使用jQuery會容易一些(還附加了一個事件處理程序):
$(document).ready(function()
{
$("select[name=item_name]").on("change", function()
{
alert("new item id = " + $(this).val().split("_")[0]);
});
});
這是jQuery版本的小提琴: http : //jsfiddle.net/acz6Q/1/
希望這可以幫助!
嘗試這個:
<form action="" method="post">
<input type="hidden" id="item_id" name="item_id" />
<input type="hidden" id="item_name" name="item_name" />
<select id="my_select" name="my_select">
<option value="item_id_1">item_name_1</option>
<option value="item_id_2">item_name_2</option>
<option value="item_id_3">item_name_3</option>
</select>
</form>
<script type="text/javascript">
$(document).ready(function() {
$("#my_select").change(function() {
$("#item_id").val($("#my_select").val());
$("#item_name").val($("#my_select option:selected").text());
});
});
</script>
請注意,您需要首先包括jQuery庫。 您也可以從這里jsfiddle.net/2FsNP/3看到它的工作原理。 使用這種方法,您無需在選項標簽的值和文本之間加上下划線即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.