本文目录一览:
- 1、Extjs3.4 获取iframe中连接的子页面中的store 急急急!!!!
- 2、extjs 获取store部分值
- 3、ExtJS4 获得store的数据
- 4、extjs 怎么获得store
- 5、extjs中,对store复制的一些问题
Extjs3.4 获取iframe中连接的子页面中的store 急急急!!!!
首先假设父子页面的html代码如下:
PageParent.html
html
head
title 父页面 /title
/head
body
div id=”divParent”我们在下面嵌入一个IFrame指向PageSon.html:/div
iframe id=’IF_ID_NEED’ src=”PageSon.html” width=”300″ height=”200″ scrolling=”no” frameborder=”1″/iframe
div
input type=”button” value=”Input” onclick=”alert(document.getElementById(‘IF_ID_NEED’).contentWindow.divSon.value);”
input type=”button” value=”Script” onclick=”document.getElementById(‘IF_ID_NEED’).contentWindow.sayHello(‘Script!’);”
/div
/body
/html
PageSon.html
html
head
title 子页面 /title
script type=”text/javascript”
function sayHello(name){
alert(‘Hello ‘+name);
}
/script
/head
body
这是子页面:
input id=”divSon” value=”子页面Input元素!”/
input type=”button” value=”Access DIV” onclick=”alert(window.parent.document.getElementById(‘divParent’).innerHTML);”
/body
/html
简单而言,就是:
从父页面访问子页面的DOM或者JavaScript
alert(document.getElementById(‘IF_ID_NEED’).contentWindow.divSon.value);
document.getElementById(‘IF_ID_NEED’).contentWindow.sayHello(‘Script!’);
从子页面访问父页面DOM的情况
alert(window.parent.document.getElementById(‘divParent’).innerHTML);
运行此示例可能会碰到same-origin policy即所谓同源禁止跨域问题,解决:
Firefox目前版本支持对file:协议实现同源访问
谷歌浏览器截至版本 28.0.1500.95 m还不允许,不过可以加参数启动chrome.exe –disable-web-security
当然示例如果运行在localhost或者127.0.0.1的网页服务器模式下自然就没有跨域一说了
那么你的问题就显而易见了:
store: window.parent.store//该store怎样从a.jsp页面中获取
extjs 获取store部分值
代码如下:
// ArrayStore
var keyNameStore = new Ext.data.ArrayStore({
fields: [‘text’, ‘value’],
data : [
[‘商品编号’,’Meta_productsNo’],
[‘商品名称’,’Meta_productName’]
]
});
// 通过value值获取keyNameStore里面的text
function getFilterFieldLable(value){
var rt = “”;
var rowIndex = keyNameStore.getCount();
for(var i=0;irowIndex;i++){
var record = keyNameStore.getAt(i);
var fields = Ext.util.JSON.encode(record.data);
var fieldObj = Ext.util.JSON.decode(fields);
if(value==fieldObj.value){
rt = fieldObj.text;
break;
}
}
return rt;
}
ExtJS4 获得store的数据
要获取store里边的数据的方法是在太多啦
var myStore=Ext.create(‘MyExtJS.store.UserStore’);
//idx是该记录在store中的index,从0开始
var 变量 = myStore.getAt(idx).get(‘字段名’);
而且,在ext的组件中还有很多方法,他已经把store的record当作变量给你传过来了,用起来相当方便,例如grid的监听事件
lisenters: {
cellclick: function(g, t, i, r) {
//这里的r就是表格被选中行的记录
}
}
store还有很多 方法 可以取出其中的数据,具体内容,查阅extjs的官方api,搜索store即可!
纯手敲,希望对lz有帮助~
extjs 怎么获得store
var ry_store = new Ext.data.JsonStore({
// store configs
autoDestroy : true,
root : ‘results’,
proxy : new Ext.data.HttpProxy({
method : ‘GET’,
prettyUrls : false,
url : ‘#’ // 参见Ext.Ajax.request的配置参数
}),
fields : [‘loopback_ip’, ‘device_name’, ‘device_model’, ‘city_name’]
});
store是自己定义的。就像这样写一下,然后ry_store就是store了。
extjs中,对store复制的一些问题
//定义store
var storeB;
var storeA = Ext.create(‘Ext.data.Store’, {
fields: [{
name: ‘firstName’
},
{
name: ‘lastName’
}],
data: [{
firstName: ‘Ed’,
lastName: ‘Spencer’
},
{
firstName: ‘Tommy’,
lastName: ‘Maintz’
},
{
firstName: ‘Aaron’,
lastName: ‘Conran’
},
{
firstName: ‘Jamie’,
lastName: ‘Avins’
}],
listeners: {
//在执行load的时候复制他的数据
load: function(store, records) {
storeB = Ext.create(‘Ext.data.TreeStore’, {
fields: [{
name: ‘firstName’,
type: ‘string’
},
{
name: ‘lastName’,
type: ‘string’
}],
data: records
});
}
}
});
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/247229.html