为了论证,假设我有:
<select id="lvl1">
</select>
<div id="lvl2">
<select id="lvl2a">
<select id="lvl2b">
<input text id="lvl2c">
</div>
<select id="lvl3">
</select>
在file1.php
我想填充 <select id="lvl3">
查询结果基本上如下所示:
SELECT * FROM lvl1 WHERE fld_a = lvl2a AND fld_b = lvl2b AND fld_c = lvl2c
障碍是 lvl2
根据用户在 file2.js
中选择的内容在外部 js 文件 ( lvl1
) 中动态创建.从我所看到的一切来看,我似乎想为此使用 JSON,但我将如何调用位于 file3.php
中的 PHP 函数?来自外部 js 文件,file2.js
并将这些结果作为数组返回以填充 lvl3
在 file1.php
?
希望我已经很好地解释了自己。提前谢谢你。
最佳答案
您将需要重构您的标记的生成方式才能使其正常工作。以下是我的做法:
lvl1
在页面加载时从您的 PHP 脚本中吐出。- 在用户选择
lvl1
中的内容后,您将使用他们选择的内容向服务器发出 AJAX 请求。 - 服务器使用您注入(inject)页面的
lvl2
标记进行响应。 - 如果需要,在用户从
lvl2
中选择内容后执行相同的操作以获取lvl3
的内容。 - 最后,提交表单会将所有选定的数据转发到您的表单处理脚本,您将在其中验证响应并执行您正在执行的任何其他操作。
这应该足以让您继续前进。
关于php - 不确定如何处理 json php mysql 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13146503/