ThinkPHP示例:Ajax表单提交ThinkPHP教程

/ / 2016-02-04   阅读:2492
Ajax表单提交和普通表单处理的区别之处,就是页面提示不再采用默认的跳转页面方式,而是采用Ajax方式进行页面无刷新提示,并且比表单处理示例多了数据查询操作,如图所示: 默认的操作需要获取数据列表,关键代...
Ajax表单提交和普通表单处理的区别之处,就是页面提示不再采用默认的跳转页面方式,而是采用Ajax方式进行页面无刷新提示,并且比表单处理示例多了数据查询操作,如图所示:


默认的操作需要获取数据列表,关键代码:
    public function index() {
        $Form = M("Form");
        // 按照id排序显示前5条记录
        $list = $Form->order('id desc')->limit(5)->select();
        $this->list =   $list;
        $this->display();
    }

检测标题的Ajax响应操作是checkTitle操作方法:
    public function checkTitle($title='') {
        if (!empty($title)) {
            $Form = M("Form");
            if ($Form->getByTitle($title)) {
                $this->error('标题已经存在');
            } else {
                $this->success('标题可以使用!');
            }
        } else {
            $this->error('标题必须');
        }
    }
如果没有输入标题,则会提示:


处理表单请求数据的方法稍作改进,采用AjaxReturn方法返回JSON数据到浏览器:
    public function insert() {
        $Form = D("Form");
        if ($vo = $Form->create()) {
            if (false !== $Form->add()) {
                $vo['create_time'] = date('Y-m-d H:i:s', $vo['create_time']);
                $vo['content'] = nl2br($vo['content']);
                $this->ajaxReturn($vo, '表单数据保存成功!', 1);
            } else {
                $this->error('数据写入错误!');
            }
        } else {
            $this->error($Form->getError());
        }
    }

前端采用了Jquery类库进行Ajax操作,详细JS方法可以右键查看源码具体查看。


下载源代码:点击下载

上一篇:没有了

下一篇:ThinkPHP中关于RBAC使用详解

我要评论

昵称:
验证码:

最新评论

共0条 共0页 10条/页 首页 上一页 下一页 尾页
意见反馈