Ext面向对象开发实践(续)


Posted in Javascript onNovember 18, 2008

要实现对数据表中的数据进行操作,第一步就是要取得数据表中的数据,我们把上篇文章中的创建Store的方法也略作调整,让其从数据表中读取数据。

this.departmentStore = new Ext.data.JsonStore({ 
proxy: new Ext.data.HttpProxy({url: "http://localhost:8080/Test_EXT/DB/Department.php"}), 
fields: ["department_code", "department_name", "manager", "division_code"] 
});

Department.php,负责连接SQL数据库,取得数据并将其转换为JSON格式,为Ext的读取作准备。
<?php 
require('JSON.php'); 
require('uai_Personal_Info.php'); 
$p = new uai_Personal_Info(); 
$result = $p->getDepartmentList(); 
$json = new Services_JSON(); 
echo $json->encode($result); 
还有一点要修改的就是新增和修改窗体的onSubmitClick方法 
onSubmitClick: function() { 
if (this.url != "") { 
this.form.submit({url: this.url, success: this.onSubmit, 
waitTitle: "Save Data", waitMsg: "Transcation process.....", scope: this}); 
this.fireEvent("submit", this, this.form.getValues()); 
} 
},

Submit方法需要传递一系列参数:
url:数据处理的URL地址,这里传入的是一个负责处理新增操作的URL
success:如果提交数据处理成功,则会回调这个参数指定的处理代码
waitTitle:数据提交时弹出对话框的标题
waitMsg:数据提交时弹出对话框的信息内容
scope:回调函数中的this所指对象

这里需要说明的是处理数据的PHP文件中,必须返回一个JSON字串,如果包含"success: true",则表示处理成或,否则认为处理失败。例如下面的代码

<?php 
require('JSON.php'); 
require('uai_Personal_Info.php'); 
$rs = $_POST; 
$rs["success"] = true; //表示处理成功 
$sql = "INSERT INTO uai_department(department_code, department_name, manager, division_code) VALUES('" . 
$_POST["department_code"] . "', '" . $_POST["department_name"] . "', '" . $_POST["manager"] . "', '" . $_POST["division_code"] . "')"; 
$p = new uai_Personal_Info(); 
$rs["r"] = $p->insert_department($sql); 
$json = new Services_JSON(); 
echo $json->encode($rs);

删除的处理则与新增、修改略有不同,因为删除不需要弹出窗体对数据进行操作,所以我们改用Ext.Ajax对象

remove: function() { 
var r = this.getActiveRecord(); 
Ext.Ajax.request({url: "http://localhost:8080/Test_EXT/DB/delete_dept.php", params: {department_code: r.get("department_code")}}); 
this.getStore().remove(r); //删除客户端数据 
},
Javascript 相关文章推荐
javascript smipleChart 简单图标类
Jan 12 Javascript
javaScript让文本框内的最后一个文字的后面获得焦点实现代码
Jan 06 Javascript
JS获取网页属性包括宽、高等等
Apr 03 Javascript
三种检测iPhone/iPad设备方向的方法
Apr 23 Javascript
微信浏览器内置JavaScript对象WeixinJSBridge使用实例
May 25 Javascript
JavaScript+Java实现HTML页面转为PDF文件保存的方法
May 30 Javascript
JQuery中解决重复动画的方法
Oct 17 Javascript
Vue实现路由跳转和嵌套
Jun 20 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
Apr 22 Javascript
Vue-Quill-Editor富文本编辑器的使用教程
Sep 21 Javascript
AjaxFileUpload.js实现异步上传文件功能
Apr 19 Javascript
小程序实现搜索框
Jun 19 Javascript
Javascript打印网页部分内容的脚本
Nov 17 #Javascript
js实现简单模态窗口,背景灰显
Nov 14 #Javascript
javascript 限制输入和粘贴(IE,firefox测试通过)
Nov 14 #Javascript
javascript 出生日期和身份证判断大全
Nov 13 #Javascript
Ajax,UTF-8还是GB2312 eval 还是execScript
Nov 13 #Javascript
刷新页面实现方式总结(HTML,ASP,JS)
Nov 13 #Javascript
火狐浏览器(firefox)下获得Event对象以及keyCode
Nov 13 #Javascript
You might like
用PHP程序实现支持页面后退的两种方法
2008/06/30 PHP
php把大写命名转换成下划线分割命名
2015/04/27 PHP
PHP扩展开发教程(总结)
2015/11/04 PHP
php字符串比较函数用法小结(strcmp,strcasecmp,strnatcmp及strnatcasecmp)
2016/07/18 PHP
Javascript实现DIV滚动自动滚动到底部的代码
2012/03/01 Javascript
JS模拟自动点击的简单实例
2013/08/08 Javascript
网页运行时提示对象不支持abigimage属性或方法
2014/08/10 Javascript
js和jquery中循环的退出和继续学习记录
2014/09/06 Javascript
ExtJS 4.2 Grid组件单元格合并的方法
2016/10/12 Javascript
Nodejs+express+ejs简单使用实例代码
2017/09/18 NodeJs
Angular6笔记之封装http的示例代码
2018/07/27 Javascript
JS执行控制之节流模式实例分析
2018/12/21 Javascript
vue 实现Web端的定位功能 获取经纬度
2019/08/08 Javascript
详解vue页面首次加载缓慢原因及解决方案
2019/11/06 Javascript
vue实现element表格里表头信息提示功能(推荐)
2019/11/20 Javascript
python实现数独算法实例
2015/06/09 Python
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
2016/06/14 Python
Python视频爬虫实现下载头条视频功能示例
2018/05/07 Python
python logging日志模块原理及操作解析
2019/10/12 Python
python自动结束mysql慢查询会话的实例代码
2019/10/27 Python
python读取yaml文件后修改写入本地实例
2020/04/27 Python
keras 自定义loss层+接受输入实例
2020/06/28 Python
python opencv实现简易画图板
2020/08/27 Python
Python 爬虫批量爬取网页图片保存到本地的实现代码
2020/12/24 Python
Belle Maison倍美丛官网:日本千趣会旗下邮购网站
2016/07/22 全球购物
KEETSA环保床垫:更好的睡眠,更好的生活!
2016/11/24 全球购物
艺术爱好者的自我评价分享
2013/10/08 职场文书
预备党员党校学习自我评价分享
2013/11/12 职场文书
电气技术员岗位职责
2013/11/19 职场文书
创业者迈进成功第一步:如何写创业计划书?
2014/03/22 职场文书
家长通知书家长评语
2014/04/17 职场文书
2015年春节标语口号
2014/12/09 职场文书
优秀团员主要事迹材料
2015/11/05 职场文书
机关干部作风整顿心得体会
2016/01/22 职场文书
Django给表单添加honeypot验证增加安全性
2021/05/06 Python
分析MySQL抛出异常的几种常见解决方式
2021/05/18 MySQL