注:thinkphp使用ajax和之前使用ajax的方法一样,不同点在于之前的ajax中的url指向了一个页面,而thinkphp里面的url需要指向一个操作方法。

在模块控制器Controller文件夹里创建一个 AjaxController.class.php
<?php
namespace Admin\Controller;
use think\Controller;
class AjaxController extends Controller{ public function Ajax(){
$this->show();//显示页面
}
public function ajaxchuli(){ //Ajax页面里的 url 指向的是这个方法 $n = D("Nation");
$attr = $n->select();
$this->ajaxReturn($attr);//ajax返回方法ajaxReturn();
} public function addajax(){
$this->show();
}
public function addchuli(){ //addajax页面里的 url 指向的是这个方法
$n = D("Nation");
$n->create();//自动收集表单。。只要内容页面使用POST传值create()方法就很方便!
$r = $n->add();//add()方法添加数据
if($r){ $this->ajaxReturn("OK","eval");//使用TEXT传值这里就要加上exal 输出字符串data数据。
}else{
$this->ajaxReturn("ON","eval");
}
} }

在模块视图(显示页面)View文件夹里先创建好Ajax文件夹(代表的是Ajax控制器),里面再创建Ajax.html页面(代表的是你自定义的方法)

<html>
<head>
<meta content="text/html; charset=utf-8" />
<script src="__PUBLIC__/js/jquery-1.11.2.min.js"> </script><!--jquery文件放在public/js里面。__PUBLIC__找到public目录-->
</head>
<body>
<select id="nation"> </select>
<script type="text/javascript">
$.ajax({
url:"__CONTROLLER__/ajaxchuli",//这里指向的是一个方法。
data:{},
dataType:"JSON",
type:"POST",
success: function(data){
//alert(data[0].code);//这里要用索引,使用eq读取不出来数据。
var str = "";
for(a in data){ str = str+"<option value='"+data[a].code+"'>"+data[a].name+"</option>"
}
$("#nation").html(str);
} });
</script>
</body> </html>

在模块视图(显示页面)View文件夹里先创建好Ajax文件夹(代表的是Ajax控制器),里面再创建addAjax.html页面(代表的是你自定义的方法)

<html>
<head>
<meta content="text/html; charset=utf-8" />
<script src="__PUBLIC__/js/jquery-1.11.2.min.js"></script>
</head>
<body>
<div>代号:<input type="text" id="code" /></div>
<div>名称:<input type="text" id="name" /></div>
<div><input type="button" id="btn" value="添加" /></div>
<script type="text/javascript"> $("#btn").click(function(){
var code = $("#code").val();
var name = $("#name").val();
$.ajax({
url:"__CONTROLLER__/addchuli",
data:{Code:code,Name:name},
dataType:"TEXT",
type:"POST",
success:function(data){ alert(data);
} });
}); </script>
</body> </html>

最新文章

  1. 设计模式(十三)代理模式(Proxy Pattern)
  2. js获取Html元素的实际宽度高度
  3. js模版引擎handlebars.js实用教程——如何引入Handlebars.js
  4. Vue.js线程机制问题还是数据双向绑定有延迟的问题
  5. Folder Recursion with C#
  6. 算法实践——Twitter算法面试题(积水问题)的线性时间解法
  7. loadrunner简单的例子(demo)
  8. 隐性改变display类型
  9. Python中的multiprocessing和threading
  10. html简单样式
  11. Brain Network (medium)
  12. Jquery DataTable控制显示列,导出EXCEL
  13. 8000个JQuery特效(插件)
  14. Amazon新一代云端关系数据库Aurora
  15. 译:SQL Server的Missing index DMV的 bug可能会使你失去理智---慎重看待缺失索引DMV中的信息
  16. 3分钟读懂移动端rem使用方法
  17. html5 canvas贝塞尔曲线篇(下)
  18. 一步一步做出属于自己的Eclipse
  19. 消息 14607,级别 16,状态 1,过程 sp_send_dbmail,第 141 行 profile 名称无效
  20. Django模型和ORM

热门文章

  1. 反向代理WebSocket连接自动断掉的问题
  2. packageOfficialDebug和resourceFile does not exist.
  3. eclipse preference plugin development store and get
  4. Redis相关技巧
  5. HDU 3277 Marriage Match III(并查集+二分答案+最大流SAP)拆点,经典
  6. U盘安装CentOS 7卡住在 mounting configuration file system
  7. Socket网络编程--小小网盘程序(2)
  8. T-Pot平台cowrie蜜罐暴力破解探测及实现自动化邮件告警
  9. 微信小程序跳转分析
  10. elasticsearch中 refresh 和flush区别【转】