【发布时间】:2012-08-17 02:09:12
【问题描述】:
我有一个包含多个输入字段、客户姓名和地址的 html 表单。当用户提交表单时,这些字段中的值将被发送到由 2 个表组成的数据库中。
我还有一个带有“是”和“否”选项的下拉框。当表单以“否”所选择的时,我需要将值作为正常发送到数据库,而不是清除新条目的输入字段,而不是我需要名称和姓氏到灰色/变为读/变为读并保持用户在其中输入的值。而地址字段为新条目重置。
然后,用户可以在地址字段中输入新值并再次按提交,这些值将与他们先前输入的姓名/姓氏的客户 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'];
无法定义。当我更改函数以使字段只读时似乎没有发生任何事情,它只会提交数据并清除表单以准备新输入。
【问题讨论】:
-
此时我们所知道的是“这没有做任何事情”。我们需要一些基本的调试,例如$dropdown 是如何定义的,你是否验证过 disable_text() 是否被调用等等。
标签: php javascript html ajax