extJs代码:

 <script src="build/ext-all.js"></script>
<script src="build/packages/ext-theme-crisp/build/ext-theme-crisp.js"></script>
<link rel="stylesheet" href="build/packages/ext-theme-crisp/build/resources/ext-theme-crisp-all.css"> <script>
Ext.onReady(function(){
// 登录界面
Ext.define('Login', {
requires:['LoginController'], // 要使用加载的类
extend: 'Ext.window.Window',
controller: 'login',
closable: false,
resizable : false,
modal: true,
//draggable: false,
autoShow: true,
title: '用户登录---OA办公系统',
items:[{
xtype:'form',//父窗体
reference: 'form',
bodyPadding: 20,
items:[{
xtype: 'textfield',
name: 'username',
labelWidth: 50,
fieldLabel: '用户名',
allowBlank: false,
emptyText: '用户名或邮箱地址'
},{
xtype: 'textfield',
name: 'password',
labelWidth: 50,
inputType: 'password',
fieldLabel: '密 码',
allowBlank: false,
emptyText: '请输入您的密码'
}]
}],
buttons: [{
name: 'registbutton',
text: '用户注册',
},{
name: 'loginbutton',
text: '用户登录',
region: 'center',
listeners:{
click: 'onLoginbtnClick'//单击事件 调用 LoginController 中的onLoginbtnClick函数
}
}]
}
); // 登录按钮的响应 Ext.define('LoginController', {
extend: 'Ext.app.ViewController',
alias: 'controller.login',
//用户登录按钮事件处理
onLoginbtnClick: function(){
//根据 view form中设置的 reference:form 中返回一个组件
var form = this.lookupReference('form');
// 判断是否是有效字段 (这个不是很明白)
if (form.isValid()) {
this.login({
data: form.getValues(),
scope: this,
success: 'onLoginSuccess',
failure: 'onLoginFailure'
})}
},
login: function(options) {
// 调用ajax
Ext.Ajax.request({
url: 'test.php',
method: 'POST',
params: options.data,
scope: this,
//callback: this.onLoginReturn, //回调函数
success: this.onLoginSuccess, //ajax请求成功
failure: this.onLoginFailure, //ajax请求失败
original: options
});
}, onLoginSuccess: function(response, options){
var result = response.responseText;
//将json字符串转成 json
var resultJson = JSON.parse(result); if(resultJson.flag){
alert('success');
}else{
alert('failure');
}
}, onLoginFailure: function(response, options){
alert('ajax请求失败');
}
}
); var log = new Login();
log.show(); });
</script>

php代码

 <?php
if(isset($_POST)){
if($_POST['username'] == '123'){
$result = array('flag'=>true);
echo json_encode($result);
}else{
$result = array('flag'=>false);
echo json_encode($result);
}
}
?>

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

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

    今天很是幸运,看到了一位大神的博客,学习了不少的东西.太感谢了.(满满的都是爱啊) 建议去学习这个大神的博客,真心不错. 博客地址:http://blog.csdn.net/column/detail ...

  2. extJs学习基础

    显示和隐藏 所有的组件都是在show和hide方法中构造的.用来隐藏组件的默认的css方法是“display:none”但是通过hidemode配置的时候就有所变化了: Ext.onReady(fun ...

  3. extJs学习基础 容器的介绍

    Viewport: 一个专门的容器用于可视应用领域(浏览器窗口). Viewport渲染自身到网页的documet body区域, 并自动将自己调整到适合浏览器窗口的大小,在窗口大小发生改变时自动适应 ...

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

    Ext.onReady(function(){ //案例一 /* var countries = ['Vietnam', 'Singapore', 'United States', 'Russia'] ...

  5. extJs学习基础2

    一个登陆界面: Ext.onReady(function(){ Ext.define('Login', { //renderTo: Ext.getBody(), extend: 'Ext.window ...

  6. Ajax 学习 - 基础学习

    <AJax - Async Javascript and xml - 异步的JavaScript和XML> 一.基础认识 AJax技术的目的:实现页面无刷新数据动态更改 优点:  + 不需 ...

  7. EXTJS学习笔记

    由于公司统一决策,决定使用EXTJS作为前台的开发UI框架,所以从今天开始学习EXTJS,对学习过程中遇到的问题做记录. 首先第一个问题:为什么要用ExtJS作为公司开发基础架构?   推荐一篇文章: ...

  8. ExtJs学习笔记之学习小结LoginDemo

    ExtJs学习小结LoginDemo 1.示例:(登录界面) <!DOCTYPE html> <html> <head> <meta charset=&quo ...

  9. Ext学习-基础概念,核心思想介绍

    1.目标   本阶段的目标是通过学习一些基础知识来对EXTJS有个整体的了解,知道EXTJS的基础语法,核心设计思想等等 2.内容   1.基础部分学习   2.EXTJS类系统介绍   3.EXTJ ...

随机推荐

  1. 理解 QEMU/KVM 和 Ceph(3):存储卷挂接和设备名称

    本系列文章会总结 QEMU/KVM 和 Ceph 之间的整合: (1)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (2)QEMU 的 RBD 块驱动(block driver) (3)存 ...

  2. MySQL Database on Azure 的用户名

    MySQL Database on Azure是中国版Windows Azure上的一个PaaS服务,类似于AWS上的RDS.MySQL Database on Azure的用户名与on-premis ...

  3. js生成[n,m]的随机数

    一.预备知识 Math.ceil();  //向上取整. Math.floor();  //向下取整. Math.round();  //四舍五入. Math.random();  //0.0 ~ 1 ...

  4. PHP&MySQL(二)——困也得啃书

    madan,所有事情都敢赶在一起...以后每天中午去学车啊,好开心..晚上好困,但是困也得啃书........ 二.PHP脚本编程语言 什么变量啊,数据类型啊,特别特别基本的不记录了,说点容易忽略的. ...

  5. 搭建PHP官方框架zend framework 2(LINUX)

    在五花八门的语言里,PHP作为我第一个觉得欣赏的理由,就是它的简单和快捷,因为它封装了许多的常用函数.PHP作为网站中一种算作比较流行的语言,也产生各种优秀的框架.我所接触过的有zend framew ...

  6. Android可移动控件

    可移动控件: 效果图: 获取屏幕的宽高: DisplayMetrics dm = getResources().getDisplayMetrics(); screenWidth = dm.widthP ...

  7. NOIP2010提高组乌龟棋 -SilverN

    题目背景 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 题目描述 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第N格是终点,游戏要求玩家控制一个乌龟棋子从起 ...

  8. 《2016ThoughtWorks技术雷达峰会----雷达新趋势》

    雷达新趋势    徐昊,ThoughtWorks中国区CTO 1.Open Source  open source 已经从一个简简单单的软件代码组织方式变成一种文化,一种运动.当谈到Open Sour ...

  9. [No000058]一口气读完一本英语书

    个人:"如何学好英语?"99个人会回答:"去,读英文原著." 然而这事儿吧,恐怕比坚持背单词还难.无论少侠们背过多少单词,最后都会败在生词太多.句子太难的坎儿上 ...

  10. NSArray遍历和修改崩溃

    //一.代码 NSArray *array = [self.dataList mutableCopy]; 或 NSArray *array = [NSArray arrayWithArray:self ...