gpt4 book ai didi

javascript - 根据下拉选择填充文本字段

转载 作者:行者123 更新时间:2023-12-03 06:01:43 25 4
gpt4 key购买 nike

我知道 Stack Overflow 上有很多类似这样的问题,但我确实需要一些与我正在做的事情更相关的东西......所以这就是我发布这个问题的原因。

我有一个使用 PHP 的 HTML 表单,它从 MSSQL 数据库中提取数据以填充下拉框。我希望在从下拉框中选择姓名后能够填充联系信息文本框。到目前为止,如果我选择特定 vendor , vendor 名称会自动输入到“名称”、“电子邮件”和“电话号码”字段中。但是,我希望在文本字段中输入不同的属性,而不是 vendor 名称本身。我怎样才能做到这一点?

数据库中我想要导入的包含姓名、电子邮件和电话号码的字段名为 MR_POC_N、MR_POC_E 和 MR_POC_P

此外,您看到的“MR_Name”是包含所有 vendor 名称的字段(仅供引用)。请帮忙!

这是我的 HTML 下拉列表代码:

<select name="vendor_dropdown" id="ven" onChange="updateinput();">
<option value="">Choose a Vendor</option>
<?php foreach($users->fetchAll() as $user): ?>
<option><?php echo $user['MR_Name'];?></option>
<?php endforeach; ?>
</select>

这是我在 JS 中的更新输入函数。我知道这是不对的,但正在寻找某种方向,因为我在 JS 方面不是最好的:

function updateinput() {


var e = document.getElementById("ven");
var venSelected = e.options[e.selectedIndex].value;

document.getElementById("name").value=venSelected;
document.getElementById("email").value=venSelected;
document.getElementById("tel").value=venSelected;
}

这是我的联系信息代码:

<table align="center">
<tr>
<td align="right">Name:</td>
<td><input class="textbox" type="text" id="name" name="name"></td>
</tr>
<tr>
<td align="right">Email:</td>
<td><input class="textbox" type="email" id="email" name="email"></td>
</tr>
<tr>
<td align="right">Phone Number:</td>
<td><input class="textbox" type="tel" id="tel" name="number"></td>
</tr>
</table>

最佳答案

由于您想要填充的数据已经在您的“$user”变量中,因此实现您想要执行的操作的最佳方法是使用数据属性。

这非常简单,您将数据存储在您选项的属性中,然后您可以从 js 访问这些值,以下是如何做到这一点:

<select name="vendor_dropdown" id="ven" onChange="updateinput();">
<option value="">Choose a Vendor</option>
<?php foreach($users->fetchAll() as $user): ?>
<option
data-name="<?php echo $user['MR_POC_N'];?>"
data-email="<?php echo $user['MR_POC_E'];?>"
data-phone="<?php echo $user['MR_POC_P'];?>"
>
<?php echo $user['MR_Name'];?>
</option>
<?php endforeach; ?>
</select>

这样您的所有数据都可以按照以下方式从 js 端访问:

var venSelected = e.options[e.selectedIndex];

document.getElementById("name").value = venSelected.dataset.name

这是一个详细讨论数据属性的链接,它永远不会有坏处;)

https://developer.mozilla.org/en/docs/Web/Guide/HTML/Using_data_attributes

关于javascript - 根据下拉选择填充文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39725765/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com