参考thinkphp+jquery实现ajax,扩展了下,写了个查询,前台代码如下:
需要引入jquery.js,下载地址http://jquery.com
function ajax(id,pic){
//由于ThinkPHP不解析JavaScript里的ThinkPHP常量,所以需要先在这里定义。
var URL='__URL__';
$.ajax({
url: URL+'/returnAjax/id/'+id,//提交访问的URL
type: 'GET',//提交的方法
dataType: 'text',//返回的内容的类型,由于PHP文件是直接echo的,那么这里就是text
timeout: 1000,//超时时间
error: function(){ //如果出错,执行函数
alert('Error loading XML document');
},
success: function(data){
//alert(data);//如果成功,弹出数据
writeHtml(data,pic);
}
});
}
function writeHtml(data,pic){
var product = eval('(' + data + ')'); //即使不引入json.js也可以转成json对象
//alert($("#cate_pic").attr("src"));
$("#cate_pic").attr("src","../images/"+pic);
$("#product_pic").attr("src","../Attachments/product/"+product.attachpath+"/"+product.attachthumb);
$("#product_subject").html(product.subject);
$("#product_content").html(product.content);
}
Product.class.php中使用echo输出,thinkphp中json_encode()方法可将对象自动转成json格式
public function returnAjax(){
$id = $_GET['id'];
$Product=D('Product')->where('id='.$id)->find();
//返回一个json格式的数据集
echo json_encode($Product);
//print_r(json_encode($Product));
}
返回的数据格式如下:
{
"id":"9",
"userid":"1",
"cid":"10",
"cid":"10",
"subject":"1111",
"color":"",
"spec":"",
"size":"",
"keywords":"",
"content":"<p>1111</p>",
"meno":"1111",
"attachpath":"200903",
"attachment":"49d1d86e68d31.png",
"attachthumb":"49d1d86e68d31_thumb.png"
}
分享到:
相关推荐
本篇文章将详细讲解如何在ThinkPHP中使用AJAX接收JSON数据。 首先,我们需要理解JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于人阅读和编写,同时也易于机器解析和生成。在前后端通信中,...
本文实例讲述了thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json。分享给大家供大家参考,具体如下: 知识点总结 1.json格式标准 { 'key':"value" } {"state":"1","msg":"\u7b80\u5386\u6295\u...
本篇文章将详细探讨在ThinkPHP中通过AJAX返回JSON的两种实现方法,以及如何在JavaScript中解析这些数据。 **方法一:使用`ajaxReturn`函数结合`json_encode`** 在ThinkPHP中,`ajaxReturn`是一个内置的助手函数,...
在后端,ThinkPHP 3.0中的控制器接收到这个Ajax请求后,会处理数据并调用模型来保存评论到数据库。控制器的代码可能如下: ```php class CommentController extends Controller { public function add() { if(IS_...
2. **控制器处理**:在控制器中,接收前端发送的Ajax请求,根据请求参数查询数据库,并返回相应的分页数据。这通常涉及到SQL的LIMIT和OFFSET操作,以及计算总页数。 3. **模型操作**:ThinkPHP的模型层可以帮助处理...
在ThinkPHP中使用Ajax技术需要注意的是,数据提交到服务器后,需要服务器进行相应的验证和处理,然后返回处理结果。前端通过解析返回的JSON数据,对用户界面进行更新。 最后,前端页面中还可以通过JavaScript对用户...
本文将详细介绍如何在TP5框架下利用Ajax技术进行后台数据交互,主要包括两种方法:使用serialize()方法和利用layui的form.on事件。 **方法一:serialize() 方法** serialize() 是jQuery提供的一个方法,它能够将...
2. **配置ajaxupload.js**:在JavaScript代码中,你需要实例化ajaxupload对象,设置上传URL(ThinkPHP的控制器处理URL)、允许的文件类型、文件大小限制等参数。 3. **后台处理**:在ThinkPHP的控制器中,你需要...
本问题主要探讨如何使用Ajax请求获取Json格式的数据,并将其循环输出到HTML表格(table)中。这里我们将详细介绍整个流程,包括Ajax请求、Json数据处理以及HTML元素的动态构建。 首先,Ajax是Asynchronous ...
### ThinkPHP + AJAX 无刷新分页实现方法 ...通过以上步骤,我们可以使用ThinkPHP框架结合AJAX技术轻松实现无刷新分页功能,不仅提高了用户体验,还降低了服务器负担,是现代Web开发中不可或缺的技术之一。
3. 前端Ajax交互:使用JavaScript(可能配合jQuery或其他库)监听表单的改变事件,触发Ajax请求,接收并处理后端返回的数据,动态更新下拉菜单或选择框的选项。 4. HTML/CSS布局:设计表单结构,使用HTML元素(如`...
在本文中,我们将深入探讨如何使用ThinkPHP5.1框架和Ajax技术来实现无刷新分页功能,这是一种优化用户体验的有效方法,可以显著提升网站性能。首先,我们要理解无刷新分页的基本原理,它通过在不重新加载整个页面的...
在这段代码中,`handleUrl`是ThinkPHP中的控制器动作,用于处理Ajax请求,`username`和`content`是提交的数据,`function(data)`是回调函数,用于处理服务器返回的数据,最后的`'json'`指定了数据类型为JSON。...
在ThinkPHP中,可以设置控制器方法接收Ajax请求,处理后返回JSON或其他格式的数据,前端JavaScript通过`XMLHttpRequest`对象发送请求,获取到响应后更新DOM元素。 5. **登录注册**:这是任何Web应用的基本功能。...
其中,使用AJAX实现无刷新数据交互是一个关键技术点,本文将详细介绍ThinkPHP5中如何使用AJAX提交表单,并提供相关的实例分析。 首先,要进行AJAX表单提交,我们通常使用jQuery提供的ajax()方法。这个方法可以让...
本文将深入讲解如何在ThinkPHP中使用Ajax实现分页功能。 一、Ajax基础 Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过创建或使用XMLHttpRequest对象...
以ThinkPHP框架为例,可以创建一个控制器方法来处理分页请求,使用`paginate()`函数进行分页,然后返回JSON数据供前端使用。前端通过jQuery的AJAX方法发送请求,获取分页数据并渲染到页面上。 在数据库方面,PHP...