gpt4 book ai didi

php - 提交表单时,如何根据下拉框中的值禁用html表单输入框

转载 作者:行者123 更新时间:2023-11-30 13:15:49 26 4
gpt4 key购买 nike

我有一个 html 表单,其中包含多个输入字段、一个客户的姓名和地址。当用户提交表单时,这些字段中的值将发送到由 2 个表组成的数据库中。

我还有一个下拉框,其中包含"is"和“否”选项。当提交表单并选择“否”时,我需要将值正常发送到数据库,但不是清除新条目的输入字段,而是需要将姓名和姓氏显示为灰色/变为只读并保留用户在其中输入的值。而地址字段会为新条目重置。

然后用户可以在地址字段中输入新值并再次按下提交,这些值将被添加到我的数据库的地址表中,其中包含他们之前输入的姓名/姓氏的客户 ID。

这将重复进行,直到他们按下表单上的另一个按钮,然后发送最终地址并为新客户条目重置整个表单。

到目前为止,我已将其设置为用户可以输入客户姓名和地址并按提交,然后它会被发送到数据库,并且表单会重置为另一个客户条目。

这是我的表单,有 4 个输入字段,

<form name="add" method="post" action="newCustomer.php">
<div id="leftcol">
<label><span>Name</span><br /> <input type="text" name="addFname" /></label>
<label><span>Surname</span> <input type="text" name="addLname" /> </label>
<label><span>Single Site?</span><Select name="field" onchange="showHide(this.value)

</label>
<div id="rightcol">
<label><span>Address line 1</span><input type="text" name="addSiteLine1" /></label>
<label><span>Address line 2</span><input type="text" name="addSiteLine2" /></label>

到目前为止,我已经尝试将它添加到我的 php 代码的底部

if($dropdown== "no"){
disable_text(true);

}

disable text 是一个禁用文本的 javascript 函数,但这并没有做任何事情。

我还尝试在提交表单时调用此函数,但那会阻止我的 $_POST 方法获取值。当我设置为只读而不是禁用再次尝试时,似乎没有任何反应。

我基本上是在尝试避免需要第二个表单/网页来添加客户地址,并尝试避免为多个地址添加多个输入框(因为有些可能有 100 多个地址)

编辑

$Dropdown 在 php 中定义为:

$dropdown = $_POST['field'];

形式为

<label><span>Single Site?</span><Select name="field" onchange="showHide(this.value);">
</label>
<Option value="yes">yes</option>
<Option value="no">no</option>

函数被调用时,当函数禁用所有我能看到的文本字段时,它们会闪烁灰色然后页面会刷新,我会收到错误消息说

    $fName = $_POST['addFname'];

无法定义。当我更改函数以使字段只读时,似乎什么也没发生,它只会提交数据并清除表单以准备好进行新输入。

最佳答案

我可能不明白这个问题,如果我错了请纠正我。您不能只使用 javascript 禁用字段并将字段值保存在 session 变量中以带回表单吗?

document.getElementById('fieldToDisable').style.disabled= 'true';

制作一个 session 变量标志,如果它在页面加载时设置,则重新填写表单并禁用字段。

关于php - 提交表单时,如何根据下拉框中的值禁用html表单输入框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12059793/

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