高手们请教个问题,我找了好久都没找到啊
typeAhead:当在combox框中输入信息时,自动显示下拉列表中对应该输入的列
[code="java"]var comdailistore =new Ext.data.JsonStore({
url: "m11_db.php?cmd=dailiList",
root: "rows",
totalProperty:"totalCount",
fields:["name"]
});[/code]
这个属性如果是URL访问取得的值,这个属性就不起作用啊
var combogwstore = new Ext.data.SimpleStore({
data : [[5,'全部'],[0, '未使用'], [1, '已使用'],[2,'已出售']],
fields : ['cardstate', 'cardstatename']
});
只有直接写死在页面才起作用,这个有办法解决吗?
而那个emptyText属性刚好相反,本地的数据你点击下拉框就自动帮你选一个
远程的数据如果你不选的话还 是刚刚设置的emptyText的值 如 :请选择
struts2 的写法
[code="java"]var comdailistore =new Ext.data.JsonStore({
url: "m11_db.php",
baseParams:{
cmd:'dailiList'
},
root: "rows",
totalProperty:"totalCount",
fields:["name"]
}); [/code]
这样看看,感觉应该是xxx参数没传递过去。你用firefox查看参数就知道了。
如果是远程加载可以使用 combobx 类似google搜索。通过设置queryParam参数远程查询数据
[code="java"] var com = new Ext.form.ComboBox({
autoLoad : false,
fieldLabel : "申请人",
store : new Ext.data.JsonStore({
url : 'scmBaseAction!getEmpUser.action',
root : 'empUserList',
fields : ["id", "empName"]
}),
displayField : 'empName',
valueField : 'id', // 传向后台的值
typeAhead : true,
loadingText : 'Searching...',
minChars : 1,
mode : 'remote',
emptyText : '请输入',
forceSelection : true,
hideTrigger : true,// 隐藏三角下列图片
queryParam : 'empUserNum' //设置查询参数名称
})[/code]
后台通过获取empUserNum值查询数据并返回就行了。
上面代码 如果你输入一个t ,后台获取empUserNum值 也就是t
进行数据库查询(where empUserNum like '%t%'),吧相应t的值查询出来返回就行了。
吧typeAhead : true, 注释了,检查你的 $con 条件是否加上了。
值是由store设置传递的。
[code="java"]this.store.baseParams[this.queryParam] = q;[/code]
[code="java"]request.getParameter("xxx");[/code]
你可以通过firefox查看是否传递了xxx参数