如何取到ext树的checkbox节点并显示在action中
我们公司用得是struts1框架,我做了个动态树代码如下:Ext.onReady(function(){Ext.BLANK_IMAGE_URL="<%=request.g...
我们公司用得是struts1框架,我做了个动态树代码如下:
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = "<%=request.getContextPath() %>/script/ext/resources/images/default/s.gif";
// 根节点
var root = new Ext.tree.AsyncTreeNode({
id : 'root',
text : '${C1801ActionForm.nodeName}',
// 默认展开根节点
expanded : true,
icon : '<%=request.getContextPath() %>/script/ext/resources/images/default/tree/root.gif'
});
var loader = new Ext.tree.TreeLoader({
baseAttrs : {
// 子节点的基本属性
checked : false
},
// 请求
dataUrl : '<%=request.getContextPath() %>/ajax/C18/C1801.do'
});
loader.on("beforeload", function(loader, node){
//
loader.baseParams.operationType = 'doAjax1';
loader.baseParams.layOutType = 'doTree1';
loader.baseParams.userId = '${C1801ActionForm.userId}';
loader.baseParams.nodeId = node.attributes.id;
loader.baseParams.showType = "0";
loader.baseParams.table = node.attributes.table;
loader.baseParams.columns = node.attributes.columns;
// loader.baseParams.nodes = tree.getChecked();
if(node.attributes.columns=="C_ZHONGLIANGFL_82" || node.attributes.columns=="ID"){
// 工厂,记录父节点[型号]
loader.baseParams.parentNodeId = node.parentNode.id;
}
});
// Tree面板组件
var tree = new Ext.tree.TreePanel({
id:'tree_me',
// tbar : [{
// }],
cls: 'treePanel',
// 边框
border:false,
// 显示滚动条
autoScroll : true,
// 自适应高度
autoHeight: true,
bodyStyle : 'background:url("<%=request.getContextPath() %>/script/images/move/back_left.gif") no-repeat;',
// 动画效果
animate: true,
// 拖动操作
enableDD: false,
// 节点前的指示线
lines:true,
// 使用箭头
useArrows:true,
// 显示根节点
rootVisible: false,
// 一次只展开树中的一个节点
singleExpand: false,
// 异步请求加载器
loader: loader,
// 显示DIV 'tree-div'
applyTo: 'tree-div',
// 节点根
root: root
});
tree.on('checkchange', function(node, checked) {
tree.expandAll();
node.expand();
node.attributes.checked = checked;
node.eachChild(function(child) {
child.ui.toggleCheck(checked);
child.attributes.checked = checked;
// child.fireEvent('checkchange', child, checked);
});
}, tree);
我希望在我的action中能够取到checkbox为true的节点ID。小弟财富不多,献出一多半给大虾,虽然财富不多但是希望有大虾能来帮忙解惑 展开
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = "<%=request.getContextPath() %>/script/ext/resources/images/default/s.gif";
// 根节点
var root = new Ext.tree.AsyncTreeNode({
id : 'root',
text : '${C1801ActionForm.nodeName}',
// 默认展开根节点
expanded : true,
icon : '<%=request.getContextPath() %>/script/ext/resources/images/default/tree/root.gif'
});
var loader = new Ext.tree.TreeLoader({
baseAttrs : {
// 子节点的基本属性
checked : false
},
// 请求
dataUrl : '<%=request.getContextPath() %>/ajax/C18/C1801.do'
});
loader.on("beforeload", function(loader, node){
//
loader.baseParams.operationType = 'doAjax1';
loader.baseParams.layOutType = 'doTree1';
loader.baseParams.userId = '${C1801ActionForm.userId}';
loader.baseParams.nodeId = node.attributes.id;
loader.baseParams.showType = "0";
loader.baseParams.table = node.attributes.table;
loader.baseParams.columns = node.attributes.columns;
// loader.baseParams.nodes = tree.getChecked();
if(node.attributes.columns=="C_ZHONGLIANGFL_82" || node.attributes.columns=="ID"){
// 工厂,记录父节点[型号]
loader.baseParams.parentNodeId = node.parentNode.id;
}
});
// Tree面板组件
var tree = new Ext.tree.TreePanel({
id:'tree_me',
// tbar : [{
// }],
cls: 'treePanel',
// 边框
border:false,
// 显示滚动条
autoScroll : true,
// 自适应高度
autoHeight: true,
bodyStyle : 'background:url("<%=request.getContextPath() %>/script/images/move/back_left.gif") no-repeat;',
// 动画效果
animate: true,
// 拖动操作
enableDD: false,
// 节点前的指示线
lines:true,
// 使用箭头
useArrows:true,
// 显示根节点
rootVisible: false,
// 一次只展开树中的一个节点
singleExpand: false,
// 异步请求加载器
loader: loader,
// 显示DIV 'tree-div'
applyTo: 'tree-div',
// 节点根
root: root
});
tree.on('checkchange', function(node, checked) {
tree.expandAll();
node.expand();
node.attributes.checked = checked;
node.eachChild(function(child) {
child.ui.toggleCheck(checked);
child.attributes.checked = checked;
// child.fireEvent('checkchange', child, checked);
});
}, tree);
我希望在我的action中能够取到checkbox为true的节点ID。小弟财富不多,献出一多半给大虾,虽然财富不多但是希望有大虾能来帮忙解惑 展开
1个回答
展开全部
var checkboxlist = document.getElementsByTagName("checkbox");
var idAry = new Array();
for(var i = 0 ; i < checkboxlist.length; i ++)
{
var current = checkboxlist[i];
if(current.checked == true)
{
idAry.push(current.id);
}
}
alert(idAry);
是不是这样?
应该能看明白吧?
var idAry = new Array();
for(var i = 0 ; i < checkboxlist.length; i ++)
{
var current = checkboxlist[i];
if(current.checked == true)
{
idAry.push(current.id);
}
}
alert(idAry);
是不是这样?
应该能看明白吧?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询