【发布时间】:2018-11-15 13:55:22
【问题描述】:
我有一个下拉框,目前可以进行三种不同的选择。根据选择的内容,我希望与组关联的组 ID 自动填充到下面的文本框中。我怎样才能得到它,这样才能满足我的需要?
目前,无论何时进行选择,我都会在我的 javascript 函数中的 var purchSelected = e.options[e.selectedIndex]; 行中获得一个 Cannot read property 'undefined' of undefined。
填充下拉列表的 SQL 查询:
$purchgroups = "SELECT [Purchasing_Group], [Purchasing_Group_ID]
FROM Final_Structure
GROUP BY [Purchasing_Group], [Purchasing_Group_ID]";
$purch = $dbh->query($purchgroups);
$purchDrop = $purch->fetchAll();
用于下拉列表的 HTML 和 PHP foreach 循环以引入值以及应自动填充值的文本框:
<select class="text ui-widget-content ui-corner-all item2" name="purchgroup" id="purchgroup" onChange="updateinput();">
<option class="choice"
value="0" selected>
Purchasing Group
</option>
<?php foreach($purchDrop as $dropdown) { ?>
<option class="choice"
value="<?php echo $dropdown['Purchasing_Group'];?>" .
data-purchgroupid="<?php echo $dropdown['Purchasing_Group_ID'];?>">
<?php echo $dropdown['Purchasing_Group'];?>
</option>
<?php } ?>
</select>
<label for="purchgroupid">Purchasing Group ID</label>
<input type="text" name="purchgroupid" id="purchgroupid" class="text ui-widget-content ui-corner-all" value="">
应在下拉值更改时调用的 Javascript 函数:
function updateinput() {
var e = document.getElementById("purchgroup");
var purchSelected = e.options[e.selectedIndex];
console.log(purchSelected);
document.getElementById("purchgroupid").value = purchSelected.dataset.purchgroupid;
}
【问题讨论】:
标签: javascript php html sql-server drop-down-menu