本文实例讲述了thinkphp中使用ajax的方法,提交表单如下图所示:
点击提交,不需要刷新本页,将内容提交到数据库当中,并在本页显示提交的内容。如下图所示:
一、jquery实现方法:
messageaction.class.php页面代码如下:
<?php
class messageaction extends action{
function index(){
$this->display();
}
function add(){
//ajaxreturn(数据,'提示信息',状态)
$m=m('message');
if($m->add($_get)){
$this->ajaxreturn($_get,'添加信息成功',1);
}else{
$this->ajaxreturn(0,'添加信息失败',0);
}
}
}
?>
模板index.html代码如下:
<html>
<head>
<script type="text/javascript" src="__public__/js/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(function(){
$('input:button').click(function(){
var $title=$('input[name="title"]').val();
var $message=$('input[name="message"]').val();
$mess=$('#mess');
$.getjson('__url__/add',{title:$title,message:$message},function(json){
//alert(json);return false;
if(json.status==1){
$mess.slidedown(3000,function(){
$mess.css('display','block');
}).html('标题为'+json.data.title+'信息为'+json.data.message);
}else{
$mess.slidedown(3000,function(){
$mess.css('display','block');
}).html('信息添加失败,请检查');
}
});
})
})
</script>
</head>
<body>
<div style="display:none; color:red;" id="mess"></div>
<form action="" method="get">
标题:<input type="text" name="title" /><br />
信息:<input type="text" name="message" /><br />
<input type="button" value="提交" />
</form>
</body>
</html>
二、thinkphp实现方法:
messageaction.class.php页面代码如下:
<?php
class messageaction extends action{
function index(){
$this->display();
}
function addtwo(){
$m=m('message');
if($vo=$m->create()){
if($m->add()){
$this->ajaxreturn($vo,'添加成功',1);
}else{
$this->ajaxreturn(0,'添加失败',0);
}
}else{
$this->error($m->geterror());
}
}
}
?>
模板index.html代码如下:
<html>
<head>
<script type="text/javascript" src="__public__/js/base.js"></script>
<script type="text/javascript" src="__public__/js/prototype.js"></script>
<script type="text/javascript" src="__public__/js/mootools.js"></script>
<script type="text/javascript" src="__public__/js/thinkajax.js"></script>
<script type="text/javascript">
function add(){
//thinkajax.sendform(表单id,url,回调函数,信息显示的地方);
thinkajax.sendform('frm','__url__/addtwo',wc);
}
function wc(data,status){
if(status!=1){
alert('发送失败');
}else{
$('list').innerhtml+='标题'+data.title+',信息'+data.message;
}
}
</script>
</head>
<body>
<div id="list"></div>
<form action="" method="post" id="frm">
标题:<input type="text" name="title" /><br />
信息:<input type="text" name="message" /><br />
<input type="button" value="提交" onclick="add()" />
</form>
</body>
</html>
感兴趣的朋友可以测试运行一下本文所示实例,可以加深对ajax应用的理解。
更多关于thinkphp相关内容感兴趣的读者可查看本站专题:《thinkphp入门教程》、《thinkphp模板操作技巧总结》、《thinkphp常用方法总结》、《smarty模板入门基础教程》及《php模板技术总结》。
希望本文所述对大家基于thinkphp框架的php程序设计有所帮助。
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!