extJs学习基础3 ajax与php交互

extJs代码:

  1 <script src="build/ext-all.js"></script>
  2     <script src="build/packages/ext-theme-crisp/build/ext-theme-crisp.js"></script>
  3     <link rel="stylesheet" href="build/packages/ext-theme-crisp/build/resources/ext-theme-crisp-all.css">
  4
  5 <script>
  6         Ext.onReady(function(){
  7             // 登录界面
  8             Ext.define(‘Login‘,  {
  9                 requires:[‘LoginController‘],     // 要使用加载的类
 10                 extend: ‘Ext.window.Window‘,
 11                 controller: ‘login‘,
 12                 closable: false,
 13                 resizable : false,
 14                 modal: true,
 15                 //draggable: false,
 16                 autoShow: true,
 17                 title: ‘用户登录---OA办公系统‘,
 18                 items:[{
 19                     xtype:‘form‘,//父窗体
 20                     reference: ‘form‘,
 21                     bodyPadding: 20,
 22                     items:[{
 23                         xtype: ‘textfield‘,
 24                         name: ‘username‘,
 25                         labelWidth: 50,
 26                         fieldLabel: ‘用户名‘,
 27                         allowBlank: false,
 28                         emptyText: ‘用户名或邮箱地址‘
 29                       },{
 30                         xtype: ‘textfield‘,
 31                         name: ‘password‘,
 32                         labelWidth: 50,
 33                         inputType: ‘password‘,
 34                         fieldLabel: ‘密  码‘,
 35                         allowBlank: false,
 36                         emptyText: ‘请输入您的密码‘
 37                       }]
 38                 }],
 39                 buttons: [{
 40                             name: ‘registbutton‘,
 41                             text: ‘用户注册‘,
 42                           },{
 43                             name: ‘loginbutton‘,
 44                             text: ‘用户登录‘,
 45                             region: ‘center‘,
 46                             listeners:{
 47                               click: ‘onLoginbtnClick‘//单击事件 调用 LoginController 中的onLoginbtnClick函数
 48                             }
 49                           }]
 50               }
 51             );
 52
 53             // 登录按钮的响应
 54
 55             Ext.define(‘LoginController‘, {
 56                 extend: ‘Ext.app.ViewController‘,
 57                 alias: ‘controller.login‘,
 58                //用户登录按钮事件处理
 59                onLoginbtnClick: function(){
 60                     //根据 view form中设置的 reference:form 中返回一个组件
 61                     var form = this.lookupReference(‘form‘);
 62                     // 判断是否是有效字段 (这个不是很明白)
 63                     if (form.isValid()) {
 64                         this.login({
 65                             data: form.getValues(),
 66                             scope: this,
 67                             success: ‘onLoginSuccess‘,
 68                             failure: ‘onLoginFailure‘
 69                     })}
 70                 },
 71                 login: function(options) {
 72                     // 调用ajax
 73                     Ext.Ajax.request({
 74                         url: ‘test.php‘,
 75                         method: ‘POST‘,
 76                         params: options.data,
 77                         scope: this,
 78                         //callback: this.onLoginReturn, //回调函数
 79                         success: this.onLoginSuccess,   //ajax请求成功
 80                         failure: this.onLoginFailure,   //ajax请求失败
 81                         original: options
 82                     });
 83                 },
 84
 85                 onLoginSuccess: function(response, options){
 86                     var result = response.responseText;
 87                     //将json字符串转成 json
 88                     var resultJson = JSON.parse(result);
 89
 90                     if(resultJson.flag){
 91                         alert(‘success‘);
 92                     }else{
 93                         alert(‘failure‘);
 94                     }
 95                 },
 96
 97                 onLoginFailure: function(response, options){
 98                     alert(‘ajax请求失败‘);
 99                 }
100               }
101             );
102
103             var log = new Login();
104             log.show();
105
106         });
107     </script>

php代码

 1 <?php
 2     if(isset($_POST)){
 3         if($_POST[‘username‘] == ‘123‘){
 4             $result = array(‘flag‘=>true);
 5             echo json_encode($result);
 6         }else{
 7             $result = array(‘flag‘=>false);
 8             echo json_encode($result);
 9         }
10     }
11 ?>
时间: 2024-10-06 22:18:59

extJs学习基础3 ajax与php交互的相关文章

ExtJS学习------------基础架构,Extjs.js和Ext-more.js的学习

Ext.apply和Ext.applyIf Ext.onReady(function(){ //Ext.apply和Ext.applyIf对对象的属性或者方法进行扩展 var src1={name:'张三',age:23};//被扩展的对象 var src2={name:'张三',age:23};//被扩展的对象 var config={name:'李四',sex:'男'};//配置对象 //使用Ext.apply进行扩展,会覆盖原来的属性或方法 Ext.apply(src1,config);

extJs学习基础5 理解mvvm的一个小案例

今天很是幸运,看到了一位大神的博客,学习了不少的东西.太感谢了.(满满的都是爱啊) 建议去学习这个大神的博客,真心不错. 博客地址:http://blog.csdn.net/column/details/extjs5.html?&page=1 首先要建立一个简单的项目,我是使用的 Sencha Architect 3自动生成的 app下面的文件 在视图文件中建立 MyViwepost.js (view文件中) 1 Ext.define('MyApp.view.MyViewport', { 2 e

extJs学习基础2

一个登陆界面: 1 Ext.onReady(function(){ 2 3 Ext.define('Login', { 4 //renderTo: Ext.getBody(), 5 extend: 'Ext.window.Window', 6 closable: false, 7 resizable : false, 8 modal: true, 9 //draggable: false, 10 autoShow: true, 11 title: '用户登录---OA办公系统', 12 item

extJs学习基础 容器的介绍

Viewport: 一个专门的容器用于可视应用领域(浏览器窗口). Viewport渲染自身到网页的documet body区域, 并自动将自己调整到适合浏览器窗口的大小,在窗口大小发生改变时自动适应大小. 一个页面中只能创建一个Viewport. 任何的Container容器都可以作为一个Viewport 的子组件,开发者使用一个Viewport作为父容器配置布局layout, 并管理他们的大小和位置. Container: 任何可能包含其它Ext.Component组件的基类,默认是没有大小

extJs学习基础4 Ext.each的用法

1 Ext.onReady(function(){ 2 //案例一 3 /* 4 var countries = ['Vietnam', 'Singapore', 'United States', 'Russia']; 5 Ext.Array.each(countries, function(name, index, countriesItSelf){ 6 console.log(name); 7 if(name == 'Vietnam'){ 8 return false; //停止循环 9 }

[ExtJS学习笔记]第九节 Extjs5的mvc与mvvm框架结构简介

本文地址:http://blog.csdn.net/sushengmiyan/article/details/38537431 本文作者:sushengmiyan -------------------------------------------------------------资源链接----------------------------------------------------------------------- 翻译来源:http://docs.sencha.com/ext

学习笔记:ajax使用规则讲解

ajax: 局部数据更新:1.ajax 由 html css Dhtml  js xml json dom 的一种结合. ajax 是一种技术,它是一种解决方案.  具有一些互动性的不需要页面刷新,减少用户的心理等待时间,并能够及时响应数据的一种解决方案2.ajax 的特点:    ajax 是基于标准的html css xml的构造    使用dom对象动态的显示和交互数据     它的数据交互格式 文本格式 xml  json    使用基于浏览器的xmlHTTPRquest 对象进行数据同

ExtJs学习-搭建开发环境

Extjs是一个非常棒的ajax框架,可以用来开发十分绚丽外观的客户端框架,能使B/S框架更加具有活力.它是一个用javascript编写的框架,与后台技术无关的ajax框架.因此,可以把ExtJs使用在asp.net.java.php等语言开发的应用程序中. 本人学习使用的是3.4版本,在3.4版本上进行学习和实验. 首先是获取Extjs框架,下载之后,解压文件到当前文件夹,目录如下所示: 编写第一个ExtJS程序 在eclipse工具中新建一个项目,引入ExtJs类库,代码在Eclipse中

Jquery基础之ajax

ajax是Asynchronous JavaScript and XML(异步JavaScript和XML)的简称,ajax并不是单一的技术而是利用一系列交互网页应用相关的技术形成的结合体,ajax揭开了无刷新更新页面的全新时代. ajax优点:不需要插件支持.优秀的用户体验.提高Web程序的性能.减轻服务器和宽带的负担.缺点:浏览器支持度不足.破浏览器前进后退按钮的正常功能.对搜索引擎的支持不足.开发和调试工具缺乏. Jquery对ajax操作进行了封装,ajax主要的几种方法是load().