由于需要用PHPCMS相关模块做特别的应用,所以这两天就研究了下PHPCMS评论AJAX提交的问题。虽然也在对JQUERY一点也不了解的情况下也常常是就地取材仿写仿改了不少,也基本能依葫芦画瓢照搬一些了,然而对JQ中的AJAX这块还一直是有意识的避开的,总打算某一天单独花一段时间对基原理和语法好好研究下,然而终究是没有等到这一天就又直接照改不误了。
PHPCMS中是利用的JQUERY作JS框架,尤其后台大量运用了AJAX,然而不知为何前台除了登陆等涉及验证的地方有采用AJAX外其它地方却很少见到影子,在PHPCMS里面对AJAX评论的呼声比较大,也有几个人发过帖子尝试改过,不过都不怎么完全,貌似官方也没太理会,估计觉得AJAX只是属于模板层面的吧。
认真看了下他的comment.php文件,里面的几个case倒是有一个是ajaxpost,不过是用来处理评论列表页面点击“回复”,浮动载入回复编辑器的,不涉及AJAX无刷新提交与读取,于是只得复制他的评论数据提交代码改改了。落叶图简单,就直接复制一份add的case改下,去掉跳转提交成功后跳转的showmessage()代码,直接echo输出评论成功,这样利用下面的jquery ajax提交时就可以直接简单获取返回信息了。
Jquery ajax无刷新提交PHPCMS评论表单的大致代码:
以下为引用的内容: JavaScript代码 - $(''#ing'').html(''<img src=//www.chinaz.com/Webbiz/Exp/"//home.bbioo.com/image/my/loading.gif" border="0"/>信息正在提交...'');
-
-
- $.ajaxSetup ({
- cache: false
- });
-
- var checkcode = $(''#checkcode'').val();
- var comment = $(''#comment'').val();
- var url = ''comment/comment.php'';
- var data = ''action=ajaxadd&checkcode=''+checkcode+''&keyid={$keyid}&verify={$verify}&comment=''+comment;
- $.ajax({
- url: url,
- data: data,
- type: ''post'',
- dataType: ''html'',
- contentType:"application/x-www-form-urlencoded;charset=GBK",
- success :function (msg){
- if (msg==''评论成功''){
-
- $(''#comment'').val('''');
- $(''#checker'').html('''');
- $(''#ing'').html('''');
- alert(''感悟提交成功!'');
- ajax_load();
- }
-
- }
- });
|
上代码只是JQ AJAX提交示例,实际过程中涉及评论无刷提交,无刷新读取及评论回复框的浮动载入、无刷新提交及评论的再次无刷新读取等,细节比较复杂,但代码都是绕上面进行的,当然评论提交和显示的PHP代码也改了些。
虽然落叶对AJAX并不太了解,改上面程序也只是模仿了HDWIKI的AJAX提交的相关代码改的,但似乎这种做法只能算是对原PHP同步处理的一种异步改进而矣,只是提交方式采用JQUERY 的ajax方法,数据处理还是PHP来完成的。
下面是载图:

原文地址:
乐鱼足球体育_乐鱼(中国)