使用ajax从sanchtouch调用SOAP Web服务
我有一个使用sencha touch 1.1实现的身份验证表单 我尝试使用SOAP从Web服务发送和获取数据,看起来我应该使用ajax,但我不知道如何做到这一点使用ajax从sanchtouch调用SOAP Web服务,ajax,web-services,soap,Ajax,Web Services,Soap,我有一个使用sencha touch 1.1实现的身份验证表单 我尝试使用SOAP从Web服务发送和获取数据,看起来我应该使用ajax,但我不知道如何做到这一点 <script type="text/javascript"> Ext.setup({ icon: 'icon.png', tabletStartupScreen: 'tablet_startup.png', phoneStartupScreen: 'phone_startup.png', glossOnIcon: fals
<script type="text/javascript">
Ext.setup({
icon: 'icon.png',
tabletStartupScreen: 'tablet_startup.png',
phoneStartupScreen: 'phone_startup.png',
glossOnIcon: false,
onReady: function() {
var form;
Ext.regModel('User', {
fields: [
{name: 'name', type: 'string'},
{name: 'password', type: 'password'},
{name: 'rank', type: 'string'}
]
});
Ext.regModel('Ranks', {
fields: [
{name: 'rank', type: 'string'},
{name: 'title', type: 'string'}
]
});
var ranksStore = new Ext.data.JsonStore({
data : [
{ rank : 'refeer', title : 'Refeer'},
{ rank : 'player', title : 'Player'},
{ rank : 'federation', title : 'Federation'}
],
model : 'Ranks',
autoLoad : true,
autoDestroy : true
});
var formBase = {
scroll: 'vertical',
standardSubmit : false,
items: [{
xtype: 'fieldset',
title: 'FIFA Portal',
instructions: 'Please enter the information above.',
defaults: {
required: true,
labelAlign: 'left',
labelWidth: '40%'
},
items: [
{
xtype: 'textfield',
name : 'name',
label: 'Name',
useClearIcon: true,
autoCapitalize : false
}, {
xtype: 'passwordfield',
name : 'password',
label: 'Password',
useClearIcon: false
}, {
xtype: 'selectfield',
name : 'rank',
label: 'Log As',
valueField : 'rank',
displayField : 'title',
store : ranksStore
}]
}],
listeners : {
submit : function(form, result){
console.log('success', Ext.toArray(arguments));
},
exception : function(form, result){
console.log('failure', Ext.toArray(arguments));
}
},
dockedItems: [
{
xtype: 'toolbar',
dock: 'bottom',
items: [
{xtype: 'spacer'},
{
text: 'Reset',
handler: function() {
form.reset();
}
},
{
text: 'Save',
ui: 'confirm',
handler: function() {
if(formBase.user){
form.updateRecord(formBase.user, true);
}
form.submit({
waitMsg : {message:'Submitting', cls : 'demos-loading'}
});
}
}
]
}
]
};
if (Ext.is.Phone) {
formBase.fullscreen = true;
} else {
Ext.apply(formBase, {
autoRender: true,
floating: true,
modal: true,
centered: true,
hideOnMaskTap: false,
height: 385,
width: 480
});
}
form = new Ext.form.FormPanel(formBase);
form.show();
}
});
</script>
外部设置({
图标:“icon.png”,
TabletStartup屏幕:“tablet_startup.png”,
phoneStartupScreen:'phone_startup.png',
格洛松尼康:错,
onReady:function(){
var形式;
Ext.regModel('用户'{
字段:[
{name:'name',type:'string'},
{name:'password',键入:'password'},
{name:'rank',type:'string'}
]
});
Ext.regModel('等级'{
字段:[
{name:'rank',type:'string'},
{name:'title',type:'string'}
]
});
var rankstore=new Ext.data.JsonStore({
数据:[
{排名:'refeer',标题:'refeer'},
{排名:'玩家',头衔:'玩家'},
{排名:'联盟',标题:'联盟'}
],
模型:“等级”,
自动加载:对,
自动销毁:正确
});
var formBase={
滚动:‘垂直’,
标准提交:错误,
项目:[{
xtype:“字段集”,
标题:“国际足联门户网站”,
说明:“请输入上述信息。”,
默认值:{
要求:正确,
labelAlign:'左',
标签宽度:“40%”
},
项目:[
{
xtype:'textfield',
姓名:'姓名',
标签:“名称”,
useClearIcon:对,
自动资本化:错误
}, {
xtype:'密码字段',
名称:“密码”,
标签:“密码”,
useClearIcon:false
}, {
xtype:'selectfield',
姓名:'排名',
标签:“登录为”,
valueField:'rank',
displayField:'标题',
商店:兰克斯商店
}]
}],
听众:{
提交:功能(表格、结果){
log('success',Ext.toArray(参数));
},
例外:函数(形式、结果){
log('failure',Ext.toArray(参数));
}
},
摘要:[
{
xtype:'工具栏',
船坞:“底部”,
项目:[
{xtype:'间隔'},
{
文本:“重置”,
处理程序:函数(){
form.reset();
}
},
{
文本:“保存”,
ui:'确认',
处理程序:函数(){
if(formBase.user){
form.updateRecord(formBase.user,true);
}
提交表格({
waitMsg:{消息:'Submitting',cls:'demos loading'}
});
}
}
]
}
]
};
如果(分机是电话){
formBase.fullscreen=true;
}否则{
Ext.apply(formBase{
是的,
浮动:是的,
莫代尔:是的,
对,,
hideOnMaskTap:错,
身高:385,
宽度:480
});
}
form=新的Ext.form.FormPanel(formBase);
form.show();
}
});
web服务是由GlassFishServer 3.1部署的java web应用程序