基于表单中的Change事件动态构建AJAX请求


Dynamically build AJAX request based onChange event in form

因此,我有几个表单元素目前用作过滤器-我计划将其作为我网站上搜索功能的基础。

我正在考虑将一组变化中的事件链接起来,动态地构建一个AJAX查询,从一组表中选择字段,但我不太确定如何才能做到这一点。

页面加载时,我有以下内容:http://jsfiddle.net/uVhzZ/.此设置的伪SQL为:SELECT * from ts_rooms WHERE capacity >= 50(Any表示未设置WHERE条件)

然而,当用户开始进行更改时,我希望将这些添加动态添加到SQL查询中——例如,如果将Lecture Style设置为Lab,容量更改为75,则伪SQL将更改为SELECT * from ts_rooms WHERE capacity >= 75 AND lectureStyle="Lab"

我该怎么做?

首先你必须准备你的AJAX请求,这可以通过创建一个包含你想要使用的所有选择的数组来完成(你可以查看ther.val(),如果它有任何值,你可以使用select id作为数组键将该值添加到该数组中),然后将其转换为JSON。

PHP将接收这个JSON字符串并将其转换为数组。然后,您可以查看这个数组,并为每个元素构建where语句。

然后,只需要获取查询结果集并从中构建另一个数组,转换为JSON并响应JS。

将所有元素放在一个表单中,发布到php搜索文件中。创建了一个带有相关约束的sql查询,并以json形式返回数据并显示。