我想在下拉列表中选择项目名称后显示项目的描述。我使用 php 将项目的值及其相应的描述保存在数组中。这是我在 php 中的代码(它在循环内):
$item_name[] = ucfirst($row['item_name']);
$desci[] = ucfirst($row['descr']);
然后我有这个脚本(不起作用)
function updateText(val)
{
var $el = document.getElementById("adv1");
for($i=0; $i < <?php echo $ctr ?>; $i++)
{
if(val == '<?php echo "'.$itemid[$i].'" ?>')
{
$el.value = "$ 750";
}
else
{
$el.value = "0";
}
}
}
这是我的 html 代码
<select name="item" id="datetime" onchange="updateText(this.value)" autofocus required>';
for ($i=0; $i < $ctr; $i++) {
echo ' <option value="'.$itemid[$i].'">'.$item_name[$i].' '.$brand[$i].' </option>';
}
echo '</select><p id="adv1"> </p>';
我想知道如何从 php 检索数据并在 javascript 中使用它。抱歉,这里是新手。感谢任何帮助,TIA!
最佳答案
<?php
echo '<select name="item" id="datetime" onchange="updateText(this.options[this.selectedIndex].getAttribute(\'data-val\'))" autofocus required>';
for ($i=0; $i <$ctr; $i++) {
echo ' <option value="'.$itemid[$i].'" data-val="'.$desci[$i].'">'.$item_name[$i].' '.$brand[$i].' </option>';
}
echo '</select><p id="adv1"> </p>';
?>
<script>
function updateText(nttest){
document.getElementById("adv1").innerHTML=nttest;
}
</script>
希望它会有所帮助,在 data-val 中,您可以传递需要在 adv1 中显示的值
关于javascript - 如何在下拉列表中选择项目名称后显示文字,显示的文字不是select的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37828988/