导航:首页 > 编程语言 > extjslocalfilter

extjslocalfilter

发布时间:2023-02-15 08:14:47

『壹』 用extjs技术怎么在行中嵌入下拉列表框

首先grid的是new Ext.grid.EditorGridPanel可编辑的列表。这里可以配置参数单击或双击编辑所在行,具体的见api。
然后是这里new Ext.grid.ColumnModel([
需要嵌入下拉列表框的列这样定义就哦了
{header : "合同状态",width : 100,sortable : true,align : "center",dataIndex : "state"
,editor : new Ext.form.ComboBox({//编辑的时候变成下拉框。
triggerAction : "all",
width : 120,
editable: false,
store : ["建立","执行","作废","完结"],
resizable : true,
mode : 'local',
lazyRender : true
})
}

『贰』 extjs combo 过滤问题

因为第一次点击的时候 , 这个store可能才开始加载 , 预先加载store试试 , 或者 store 中 autoLoad = true 试试

『叁』 怎么查看extjs filter的过滤

主要利用filter过滤掉未经登录而直接跳转到非登录访问页面。代码而言的话并不难,只是有几点问题需要注意一下。
1.使用filter需要配置web.xml,如果是/*那么在拦截后的页面会连带jsp页面里的js和css一并拦截住。
解决办法是jsp放在jsppage这个文件下,其他css、js并列。配置的时候就/jsppage/*。
还有个办法是在dofilter里面判断在request域拿到url,进行比对,然后过滤。
2.需要设置哪些页面是你不想拦截的【假设所有的页面都放在jsppage内】。
代码见下:
LoginFilert.java
public class LoginFilter extends HttpServlet implements Filter {
public void doFilter(ServletRequest sRequest, ServletResponse sResponse,
FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) sRequest;
HttpServletResponse response = (HttpServletResponse) sResponse;
HttpSession session = request.getSession();
String url = request.getServletPath();
String contextPath = request.getContextPath();
if (url.equals("")){
url += "/";
}
if ((url.startsWith("/") && !url.startsWith("/jspPage/login"))) {// 若访问后台资源
// 设置不需要过滤的页面
if (url.endsWith("about.jsp")) {
filterChain.doFilter(sRequest, sResponse);
return;
}
// 过滤到login
String admin = (String) session.getAttribute("admin_name");
if (admin == null) {// 转入管理员登陆页面
response.sendRedirect(contextPath + "/jspPage/login.jsp");
return;
}
}
filterChain.doFilter(sRequest, sResponse);
}
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
}
web.xml

loginFilter

util.LoginFilter

loginFilter
/jspPage/*

『肆』 extjs4.1版本 treePanel树形表格列表增加锁定功能(lock)和查询过滤(filter)

刚查的api 有这个参数enableLocking
如果不能全量升级版本的话,可以考虑一下能不能单独升级这部分的代码,重写源码

『伍』 extjs中下拉框的内容实现有条件选择,对应的情况下可以选择一些对应的选项

参考代码如下:
{ header: '单位名称', dataIndex: 'unitname',
field:
{ xtype: 'combo',
editable: false,
emptyText: "请选择...",
valueField: "id",
displayField: "text",
mode: 'local',
store: storeddl
}
}

var storeddl = Ext.create('Ext.data.Store', {
proxy: {
type: 'ajax',
url: "../../Handler/SystemHandler/UnitHandler.ashx?Lx=ddl"
},
root: 'items',
forceSelection: true,
// lazyRender: true,
fields: ['id', 'text'],
listeners:

{

select: selectRow,

focus: eventFocus

}
});

『陆』 ExtJS grid表头如何增加下拉项

extjs自己提供复选框列

//checkbox列

varfilecheckbox=newExt.grid.CheckboxSelectionModel();

//GridPanel

varfileGrid=newExt.grid.GridPanel({

store:fileStore,

columns:[

newExt.grid.RowNumberer(),//显示列数

filecheckbox,//显示复选框列

{//其他显示列}]

//省略其他属性

});

这样你就可以而得到一个复选框,可以进行单选、全选了

如果你想自己定义的话,也可以

//定义filters

varfilters=newExt.ux.grid.GridFilters({

//

encode:encode,//jsonencodethefilterquery

local:local,//defaultstofalse(remotefiltering)

filters:[{

type:'numeric',

dataIndex:'id'

},{

type:'string',

dataIndex:'company',

disabled:true

},{

type:'numeric',

dataIndex:'price'

},{

type:'date',

dataIndex:'date'

},{

type:'list',

dataIndex:'size',

options:['small','medium','large','extralarge'],

phpMode:true

},{

type:'boolean',

dataIndex:'visible'

}]

});

//

//

//thefiltertypes(

varcreateColModel=function(finish,start){

varcolumns=[{

dataIndex:'id',

header:'Id',

//=true

//tousestore'sfield'stypeproperty(iftypepropertynot

//'auto'which

//GridFilterswillassumetobe'StringFilter'

filterable:true

//,filter:{type:'numeric'}

},{

dataIndex:'company',

header:'Company',

id:'company',

filter:{

type:'string'

//

//,disabled:true

}

},{

dataIndex:'price',

header:'Price',

filter:{

//type:'numeric'//

}

},{

dataIndex:'size',

header:'Size',

filter:{

type:'list',

options:['small','medium','large','extralarge']

//,phpMode:true

}

},{

dataIndex:'date',

header:'Date',

renderer:Ext.util.Format.dateRenderer('m/d/Y'),

filter:{

//type:'date'//

}

},{

dataIndex:'visible',

header:'Visible',

filter:{

//type:'boolean'//

}

}];

returnnewExt.grid.ColumnModel({

columns:columns.slice(start||0,finish),

defaults:{

sortable:true

}

});

};

然后

vargrid=newExt.grid.GridPanel({

colModel:createColModel(4),

plugins:[filters],

//这两个属性是重点,加上去就可以了

});

效果看图片。

建议你去下载官方的源代码,然后看其中的例子。

里面有一个就是如何自定义这个的

『柒』 使用ExtJs生成一个下拉单选框,但是这个单选框在IE浏览器显示正常,在谷歌和火狐浏览器显示不正常,如图

尊敬的用户,您好!很高兴为您答疑。
从界面上来看,您的list数据没有被正确识别,建议您打开您的web控制台看下报错信息,依照您提供的内容来看,这个属于转换错误。
希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。

『捌』 Extjs项目中接收json数据点击某个下拉框实现回显数据

使用回调函数对 年假字段赋值.

varholidayType=newExt.form.ComboBox({
store:newExt.data.SimpleStore({ fields:['value','text'],
data:[['0','事假'],['1','病假'],['2','年假']] }),
fieldLabel:'性别',
displayField:'text',
valueField:'value',
triggerAction:'all',
allowBlank:false,
width:86,
editable:false,
mode:'local',
listeners:{
select:function(){
varcomb=this;
if(this.getValue()=="年假"){
Ext.Ajax.request({
url:url,
method:'POST',async:false,scope:this,
params:params,
success:function(response,options){
//alert(response.responseText);
varrsInfo=Ext.util.JSON.decode(response.responseText);
varhaveDays=comb.ownerCt.getComponent('havDays')
//注意这里的引用方式
if(rsInfo.success){
haveDays.setValue(rsInfo.data);
}else{

}
}),
}
},
},
}
});

varhavDays=newExt.form.NumberField({name:'havDays',itemId:'havDays',
fieldLabel:'年假剩余天数',
value:0,});

『玖』 extjs如何让下拉列表展开

extjs中直接显示展开的下拉列表:

Ext.ux.TreeCombo = Ext.extend(Ext.form.ComboBox, {
constructor : function(cfg) {
cfg = cfg || {};
Ext.ux.TreeCombo.superclass.constructor.call(this, Ext.apply({
maxHeight : 300,
editable : false,
mode : 'local',
triggerAction : 'all',
rootVisible : false,
selectMode : 'all'
}, cfg));
},
store : new Ext.data.SimpleStore({
fields : [],
data : [[]]
}),
// 重写onViewClick,使展开树结点是不关闭下拉框
onViewClick : function(doFocus) {
var index = this.view.getSelectedIndexes()[0], s = this.store, r = s.getAt(index);
if (r) {
this.onSelect(r, index);
}
if (doFocus !== false) {
this.el.focus();
}
},
tree : null,
// 隐藏值
hiddenValue : null,
getHiddenValue : function() {
return this.hiddenValue;
},
setHiddenValue : function(code, dispText) {
this.setValue(code);
Ext.form.ComboBox.superclass.setValue.call(this, dispText);
this.hiddenValue = code;
},
initComponent : function() {
var _this = this;
var tplRandomId = 'deptcombo_' + Math.floor(Math.random() * 1000) + this.tplId
this.tpl = "<div style='height:" + _this.maxHeight + "px' id='" + tplRandomId + "'></div>"
this.tree = new Ext.tree.TreePanel({
border : false,
enableDD : false,
enableDrag : false,
rootVisible : _this.rootVisible || false,
autoScroll : true,
trackMouseOver : true,
height : _this.maxHeight,
lines : true,
singleExpand : true,
root : new Ext.tree.AsyncTreeNode({
id : _this.rootId,
text : _this.rootText,
leaf : false,
border : false,
draggable : false,
singleClickExpand : false,
hide : true
}),
loader : new Ext.tree.TreeLoader({
dataUrl : _this.url
})
});
this.tree.on('click', function(node) {
if ((_this.selectMode == 'leaf' && node.leaf == true) || _this.selectMode == 'all') {
// if (node.parentNode && node.parentNode.attributes.id != '000000') {
var dispText = node.text;
var code = node.id;
while (node.parentNode && node.parentNode.attributes.id != '000000') {
if (node.parentNode.text != dispText) {
dispText = node.parentNode.text + dispText;
}
node = node.parentNode;
}
_this.setHiddenValue(code, dispText);
_this.collapse();
}
});
this.on('expand', function() {
this.tree.render(tplRandomId);
});
Ext.ux.TreeCombo.superclass.initComponent.call(this);
}
})
Ext.reg("treecombo", Ext.ux.TreeCombo);

只要设置singleExpand : true, 即可!

『拾』 ExtJs grid 如何实现按照每一列进行筛选

store 有一个 filter 方法。
store.filter(columnIndex, searchValue);
columnIndex - 要过滤的字段的 dataIndex
searchValue - 过滤条件

但是在数据庞大或者数据改动比较多的系专统里不建议这属么做。
本地过滤意味着第一次查询要查询所有的数据,这样会很慢。
再就是如果一直保持者第一次查询的数据的话,数据准确性也很低。

阅读全文

与extjslocalfilter相关的资料

热点内容
wt是什么文件 浏览:75
孩子出生证能在什么网站找到吗 浏览:465
java日期compare 浏览:120
深州有哪个编程学校好 浏览:826
抖音数据中心怎么才算合格 浏览:540
全栈视频数据是什么 浏览:787
网上少儿编程哪个好些 浏览:132
oracle数据库优化方法 浏览:844
怎么关闭网络唤醒 浏览:894
孤单的微信头像动漫 浏览:305
有没有哪个大学教编程 浏览:851
wordpress后台添加广告位置 浏览:491
怎样快速修改qq密码 浏览:145
怎么清除恶意攻击网站 浏览:511
qq头像女生侧颜马尾 浏览:718
苹果自己的文件格式 浏览:85
放在c盘的app如何删除 浏览:912
华为手机克隆后文件放在哪里 浏览:631
清乐网站制作需要多少人 浏览:294
网络游戏系统 浏览:933

友情链接