Php JQUERY&选择框不更新数据库

Php JQUERY&选择框不更新数据库,php,html,jquery,forms,Php,Html,Jquery,Forms,我有以下3个复选框,它们是从php数据库填充的。我需要JQUERY的帮助,一旦任何选择框被更改,该值就会被发布到一个php文件中,并且能够通过JQUERY返回响应 每个选择框都应该是独立的,以便只将该复选框的值和名称发送到PHP文件 我从下面的JQUERY开始发送第一个复选框,但是没有得到回复 需要对JQUERY进行哪些修改才能接收其他复选框的输入,然后正确发送数据 php文件将只回显响应使用的if语句 任何帮助都将不胜感激 $document.readyfunction{ $'select.

我有以下3个复选框,它们是从php数据库填充的。我需要JQUERY的帮助,一旦任何选择框被更改,该值就会被发布到一个php文件中,并且能够通过JQUERY返回响应

每个选择框都应该是独立的,以便只将该复选框的值和名称发送到PHP文件

我从下面的JQUERY开始发送第一个复选框,但是没有得到回复

需要对JQUERY进行哪些修改才能接收其他复选框的输入,然后正确发送数据

php文件将只回显响应使用的if语句

任何帮助都将不胜感激

$document.readyfunction{ $'select.person-1'.changefunction{ $.ajax{ 键入:“POST”, url:'lib/positionMarshallProcess.php', 数据:{ selectFieldValue:$'select.person-1'.val, changeCol1:$'input[name$=changeCol1]'。val }, 数据类型:html, }, 成功:functiondata{ var a=数据。拆分“|***|”; 如果[1]==更新{ $'msg'.htmla[0]; } } }; 返回false; }; }; 约翰·史密斯 1. 约翰·史密斯
您使用的选择器对于显示的HTML不正确。person-1是一个类选择器,但是select元素的名称中有这个值

此外,success属性位于$.ajax调用的options对象之外-它需要位于内部

通过删除隐藏字段,将更改事件处理程序挂接到所有select元素上的公共封送处理select类,并使用select元素的name属性填充AJAX请求中发送的数据的changeCol属性,可以解决此问题并使代码更具可扩展性。试试这个:

$document.readyfunction{ $'select.marshal select'.changefunction{ 让$select=$this; //在您的AJAX请求中。。。 让数据={ selectFieldValue:$select.val, changeCol:$select.prop'name' }; 控制台日志数据; }; }; 约翰·史密斯 无名氏 1. 2. 约翰·史密斯 无名氏
HTML示例中没有select.person-1或input[name$=changeCol1]元素。由于将success放置在settings对象之外,因此$.ajax调用中还有一个语法错误。检查devtools中的控制台以调试该错误。嗨,Rory,谢谢你。你能澄清一下你所说的select.person-1是什么意思吗?select的名字是person-1?然而,我渴望学习如何将任意3个选择框发布到JQUERY,而不仅仅是person-1..person-1是类选择器,而不是名称选择器。我在下面为你添加了一个答案。嗨,罗瑞,谢谢你。我很难把代码放在哪里,以及要添加什么来物理地推送到php文件中,你能帮我添加这些行吗?嗨,Rory,谢谢你的帮助。我可以请你帮助我与最后的接触,这是张贴PHP行ID。我想这可能是在一个隐藏的字段。本质上,我是在一个名为“positions”的表中循环,并将所有正确发送的选择框放置在数据库的[positionNo]中,但选择框的输出需要更新。我尝试了一个隐藏字段,但这只发布了第1行的ID,不能继续向下。@JASH当然,答案已更新。Rory,非常感谢你,这是一种享受。我遇到的一个错误是,这些下拉框作为while循环运行,因此我还需要发送行ID。我可以为positionNo使用一个隐藏字段,并已设法发送该字段,但它始终只发送第一行的值。你能帮忙吗?