我已经看到了与此略有关系的问题,但没有一个能解决我的问题.我已经设置了Ext.Ajax.request,如下所示:
var paramsStringVar = 'param1=1¶m2=two¶m3=something¶m4=etc';
Ext.Ajax.request({
url: '/cgi-bin/url.pl',
method:'POST',
params:paramsStringVar,
timeout:120000,
success: function(response, opts){
var objhtml = response.responseText; //content returned from server side
console.log(objhtml);
}
});
Run Code Online (Sandbox Code Playgroud)
此请求从后端检索适当的内容.一个参数是outputType,它可以取值{html,excel,csv}.当返回html进行显示时,我能够正确处理和显示它.现在问题......
当我将outputType参数设置为csv或excel时,我会根据请求将相应的内容作为csv或tsv(excel)返回.但是,我不想要内容,我想提示下载文件(csv或excel).如何让浏览器自动提示用户下载文件而不是仅仅检索extjs中的文本内容?
版本4.07所以我不能使用任何4.1唯一的功能
我已经看到类似的问题在其他地方没有得到答案.我想在一个列中有一个组合框,里面有两个选项(ASC,DEC).我希望它显示在每一行中,或者至少在未选中时显示其值.
我知道在每一行中渲染一个组合框并不是一个"好主意",但在这种情况下,我知道我最多会有大约20行,所以它不应该是一个大问题.如果无法做到这一点,我想从组合框显示中选择一个值.目前我只是在点击一行时出现组合框,这没有多大意义,因为除非你正在制作它,否则你看不到你的选择.这是什么解决方案?
此外,我想摆脱更改并取消当我点击一行时弹出的按钮,我只是想能够使用组合框编辑单元格,并让它自动更改/保存.
我正在创建一个带有两个框的项目选择器,它们可以在extjs应用程序中来回移动.在右侧框中,我创建了用于上下移动项目的按钮.基本上我是在上面或下面交换一个项目.所以,我的代码在这方面是直截了当的
MoveUp: function(button, event, eOpts){
var theChosen = Ext.getStore('storeId').getRootNode().findChild('text', 'Chosen folder');
var chosenPanel = Ext.ComponenetQuery.query('#chosenTreePanel')[0];
var selected = chosenPanel.getSelectionModel().getSelection();
for( var i = 1; i < theChosen.childNodes.length; i++){
if(Ext.Array.contains(selected, theChosen.childNodes[i]) && (!Ext.Array.contains(selected, theChosen.childNodes[i-1]){
var temp = theChosen.childNodes[i];
theChosen.childNodes[i] = theChosen.childNodes[i-1];
theChosen.childNodes[i-1] = temp;
}
}
}
Run Code Online (Sandbox Code Playgroud)
所有这些代码似乎都运行正常,因为在单击我的按钮并检查firebug中的DOM后,我可以看到所选节点已正确移动到数组中,但是,此效果永远不会显示在我的treepanel中.???如何在树形图更改时更新树形图.???
TreePanel heirarchy看起来只是为了澄清
根节点'选择文件夹节点'我在"文件夹"中上下移动的项目数组
我正在使用版本4.0.7
尝试使用replaceChild()来触发事件以进行重新渲染并不像我预期的那样
更改:
var temp = theChosen.childNodes[i];
theChosen.childNodes[i] = theChosen.childNodes[i-1];
theChosen.childNodes[i-1] = temp;
Run Code Online (Sandbox Code Playgroud)
至:
var temp = theChosen.childNodes[i];
theChosen.replaceChild(theChosen.childNodes[i-1], theChosen.childNodes[i]);
theChosen.replaceChild(temp, theChosen.childNodes[i-1]);
Run Code Online (Sandbox Code Playgroud)
导致某些节点丢失的奇怪行为.当然不是我想要的.我在哪里错了?
使用datachanged和(未记录的)刷新事件尝试以下代码:
Ext.getStore('storeId').fireEvent('datachanged', Ext.getStore('chosen') );
Ext.getStore('storeId').fireEvent('datachanged', Ext.getStore('chosen') ); …
Run Code Online (Sandbox Code Playgroud) 我有一些严重的问题试图在extjs 4.07中为我的用户界面布置一些按钮我有一个基本布局,我想改变,但每次我改变一些东西我的按钮消失,或者一个占用整个面板,或基于我输入的配置没有任何意义的其他内容.我需要帮助.这是代码:
{xtype:'panel',
columnWidth:.06,
layout:'vbox',
items:[
{xtype:'button', text:'=>', action'moveOver'},
{xtype:'button', text:'<=', action'moveBack'},
{xtype:'button', text:'reset', action'reset'}
]
}
Run Code Online (Sandbox Code Playgroud)
以下是我所拥有的,而不是我想要的面板.
是)我有的:
[----------]
[[=>] ]
[[<=] ]
[[RS] ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[----------]
Run Code Online (Sandbox Code Playgroud)
我想要的是这样的:
[----------]
[ ]
[ [=>] ]
[ ]
[ [<=] ]
[ ]
[ [RS] ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ]
[ ] …
Run Code Online (Sandbox Code Playgroud)