Javascript 如何根据下拉菜单选择值预先填充表单?
我有一个表单,它有一个下拉选择菜单,可以从我的数据库中加载发票ID。我正在尝试根据从下拉菜单中选择的发票值预先填充表单。在我的数据库中有一列invoiceidcopy,其中包含一个值,该值显示为我的下拉菜单的选项。如果您注意到下面数据库表的图像中,您会注意到第一行/记录的invoiceidcopy字段为空..在我的下拉菜单中…当然…第一个选项为空。最后,我的代码下面试图尝试填写我的形式只有当我选择空白选择从下拉菜单,但不是其他2个选择?如何根据下拉菜单选择值预先填充表单 形式 剧本 /tst/orders2.phpJavascript 如何根据下拉菜单选择值预先填充表单?,javascript,php,jquery,html,mysql,Javascript,Php,Jquery,Html,Mysql,我有一个表单,它有一个下拉选择菜单,可以从我的数据库中加载发票ID。我正在尝试根据从下拉菜单中选择的发票值预先填充表单。在我的数据库中有一列invoiceidcopy,其中包含一个值,该值显示为我的下拉菜单的选项。如果您注意到下面数据库表的图像中,您会注意到第一行/记录的invoiceidcopy字段为空..在我的下拉菜单中…当然…第一个选项为空。最后,我的代码下面试图尝试填写我的形式只有当我选择空白选择从下拉菜单,但不是其他2个选择?如何根据下拉菜单选择值预先填充表单 形式 剧本 /tst/o
您的错误源似乎来自通过ajax发送到php的json数据。您应该尝试将数据键括在引号中,以便javascript不会将其替换为变量值
data: {
'invoiceidcopy': invoiceidcopy
}
另一个可能的错误源是从表中选择记录的sql。
您是否尝试过像这样从变量名中删除括号
$query = "SELECT txt1, txt2, q1
FROM seguin_orders
WHERE invoiceidcopy = '".$invoiceidcopy."'";
甚至使用像这样的大括号
$query = "SELECT txt1, txt2, q1
FROM seguin_orders
WHERE invoiceidcopy = {$invoiceidcopy}";
另外,在将值发送到php之前检查该值,以确保它是您所期望的值,这也很好。例如,您可以执行以下操作:
e.preventDefault();
var invoiceidcopy = $('#dropdown-select').val();
alert(invoiceidcopy); /*display the value to confirm it is correct */
// use the javascript console
console.log(invoiceidcopy);
可以如果最终找到了解决方案,请务必提供反馈。
$query = "SELECT txt1, txt2, q1
FROM seguin_orders
WHERE invoiceidcopy = '".$invoiceidcopy."'";
$query = "SELECT txt1, txt2, q1
FROM seguin_orders
WHERE invoiceidcopy = {$invoiceidcopy}";
e.preventDefault();
var invoiceidcopy = $('#dropdown-select').val();
alert(invoiceidcopy); /*display the value to confirm it is correct */
// use the javascript console
console.log(invoiceidcopy);