我有一个用户输入的HTML输入。在每个键之后,JQUERY事件将获取到目前为止所写的文本并进行一次将由PHP拾取的AJAX调用。
之前我已经完成了这个,并且很容易有一个被调用的PHP脚本,然后处理传递的数据 - 例如:db调用并返回所需的内容。
问题 - 是否可以使用PHP对象执行此操作? (我是第一次写OOP PHP)。有没有办法将AJAX调用与PHP对象结合起来,还是PHP结束只是标准函数?
谢谢
* 更多信息:此功能正在搜索具有6百万郊区/邮政编码的数据库的位置。用户键入的每个键触发的jquery事件创建一个到目前为止键入的字母的ajax调用。调用PHP并运行SQL查询以返回可能的位置。
答案 0 :(得分:2)
您可以将PHP对象与AJAX调用结合起来,但是您必须更详细地解释您正在尝试做的事情,以确定它是否对您有所帮助。
听起来你只想要一个AJAX调用,这个调用是在用户没有给文本框或其他任何内容输入的500毫秒之后调用的。这似乎是标准的PHP更新功能。
根据你到目前为止所说的,我建议你选择AJAX;让它处理onKeyUp,onKeyPress或任何你想要的东西,然后运行一些PHP。
回想一下,你可以用很多方式创建一个计时器;只是在这里搜索。您可能不希望为每个击键使用AJAX。
OnKeyUp JavaScript Time Delay?
希望有所帮助。
答案 1 :(得分:1)
当客户端暂停输入一段时间后,使用javascript(读取jQuery)向服务器提交帖子消息。
如果您尝试提交完整形式的数据,jquery中有一个有用的功能可以为您序列化它:
var formData = $("#form").serializeObject();
$.post('phpPageURL.php', formData, function(data){
//analyze success or failure
});
然后,编写一些php,将该帖子数据转换为模型(类),这是应用程序的其余部分与该数据交互的方式。然后,根据您要对该数据执行的操作,调用必要的控制器,将其传递给该对象。
类似的东西:
$foo = new Foo();
$foo->name = $_POST['formField_name'];
ManipulateData::doawesomeness($foo);