events
你检查一下是否click/hover/mouseover的默认event没有传进去?
function tt(event)
{
alert(event);
}
你的理解有问题
html 不能变成 ext对象,但是ext可以对html dom进行编辑
ext有很多对象,每个对象都有自己的属性和方法。而html的每个标签也可以看作对象,但是属性和方法与ext有本质区别,ext本身没有提供这种转换方法
你最好还是说你的原始问题吧,估计的思路偏了。
1、创建一个名称为 textarea_form 的html文件 。
2、添加一个 textarea文本区域对象 设置id为 my_textarea_id_form,添加一个form表单并设置id。
3、添加一个button按钮,在button的click点击事件中加入自定义函数名称为,添加一个p标签my_textarea_form。
4、在javascript中创建一个自定义函数,函数名称为 my_textarea_form。
5、在自定义函数中数通过文本区域id(my_textarea_id_form)获取 textarea文本区域对象。用 form 属性获取 文本区域所在的表单对象,在用form表单对象id属性获取表单id将获取。
6、在浏览器中打开文件 textarea_form,点击button查看获取form表单id效果。
常规的ExtJS的Store,在new一个Store控件的时候,加上proxy属性,指向URL,在URL里返回特定格式的JSON数据即可。
var store = new ExtdataStore({
// 获取数据的方式
proxy : new Extdata>
1 使用form表单提交
使用表单提交是调用了表单的submit方法,其配置项包括url、method等。这种方式能够以JSON的形式提交参数信息。
var myform = Extcreate('ExtformPanel',{undefined
defaultType: 'textfield',
items:[{undefined
fieldLabel : 'Name',
name : 'name'
},{undefined
fieldLabel: 'Gender',
name : 'gender'
},{undefined
fieldLabel : 'Age',
name: 'age'
}],
buttons: [{undefined
text : 'load',
handler : function(){undefined
thisup('form')getForm()submit({undefined
url: '/request/userinfo',
method : 'POST',
success : function(form, action){undefined
consolelog(form);
ExtMsgalert('title', 'load success');
});
}]);
2 使用Ajax异步提交
将上述handler方法中的内容换成一下代码即可。在Ajax的request方法中是一个配置对象,其配置参数包括url,type,params。其中params表示要提交的参数,在此例中是从form表单中通过getValues()方法获得的。该种方式也能将参数一JSON的方式提交到后台,与一个对象匹配。
var values = thisup('form')getForm()getValues();
ExtAjaxrequest({undefined
url:'/request/userinfo',
headers : {undefined'userHeader': 'userMsg'},
type:'POST',
params:values,
success:function(response){undefined
var data = responseresponseText;
consolelog(data);
consolelog("success");
},
});
3 使用ExtdataStore
在项目中经常需要通过提交一些数据来从后台获取相应的信息。例如,在表单中输入某个人的id和name就可以查出它的相关信息并在前台显示。一个关于extjs的例子如下:
//data Model
Extdefine('User',{undefined
extend: 'ExtdataModel',
fields: [{name:'name',type:'string'},
{name:'gender',type:'string'},
{name:'age',type:'string'}
]
});
var userStore = Extcreate('ExtdataStore',{undefined
model: 'User',
pageSize: 20,
// autoLoad : true,
proxy: {undefined
type : 'ajax', //提交数据的方式
url : '/request/userinfo',
reader : { //以json的形式读取将要提交的数据
type : 'json',
root : 'resultList'
},
writer : {undefined
type : 'json'
},
actionMethods : {undefined
create : 'POST'
}
},
});
//grid Panel
Extcreate('ExtgridPanel',{undefined
store: userStore,
columns: [
{header : 'Name', dataIndex : 'name'},
{header : 'Gender', dataIndex : 'gender'},
{header : 'Age', dataIndex : 'age'}
],
height: 200,
width: 400,
renderTo: 'div2'
});
//form Panel
var myform = Extcreate('ExtformPanel',{undefined
defaultType: 'textfield',
items:[{undefined
fieldLabel: 'Name',
name: 'name'
},{undefined
fieldLabel: 'Gender',
name: 'gender'
},{undefined
fieldLabel : 'Age',
name : 'age'
}],
buttons: [{undefined
text: 'load',
handler: function(){undefined
var values = thisup('form')getForm()getValues();
consolelog(values);
userStoreproxyextraParams=values;
userStoreloadPage(1);
}
}
});
在handler方法中获取form表单的参数后,赋值给userStoreproxyextraParams,然后调用userStoreloadPage(1)。调用loadPage()方法时,会委托给proxy对象去后台获取数据。所以对proxy的配置是核心。使用这个方式从后台获取数据时,后台接口返回的对象应该包括一个List字段,list中包含所需要的具体信息。比如
@ReponseBody
public UserInfoResp getUserInfo(User user) {undefined
}
UserInfoResp应该像这样有一个List字段
class UserInfoResp {undefined
List<User> resulltList;
}
以上就是关于ext在ie报无法获取属性“events”的值: 对象为 null 或未定义错误在火狐中报a is undefined错误是什么意思全部的内容,包括:ext在ie报无法获取属性“events”的值: 对象为 null 或未定义错误在火狐中报a is undefined错误是什么意思、ext 怎么把html对象转成ext对象、ExtJS中怎样获取Form表单中的每一项的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)