动态生成checkboxgroup出现的两个问题,麻烦给看一下

问题描述

下面是我做动态生成checkbox的一个demo.不过有两个问题一直无法解决,麻烦各位帮忙看下:1, 如果checkbox在初始化的时候就checked(选中),取消选中的时候事件没有触发.比如例子上checkbox B刚开始是代码给选中的,取消B的选中,上面的文本框不会出现单个C,如果单选中一个C,文本框应该显示C.2, 点击动态生成,总是提示this.ownerCt.forcelayout is null or undefined.好像是render不对,不知道原因在哪.可是通过调试cbGroup.ownerCt.forceLayout是false.请各位帮忙看看,谢谢了!下面是代码<html><head><meta http-equiv="Content-Type" content="text/html; charset=gbk"> <title>Hello World Window Example</title> <link rel="stylesheet" type="text/css" href="ext-3.2.1/resources/css/ext-all.css" /> <script type="text/javascript" src="ext-3.2.1/adapter/ext/ext-base-debug-w-comments.js"></script> <script type="text/javascript" src="ext-3.2.1/ext-all-debug-w-comments.js"></script> <script type="text/javascript">Ext.onReady(function(){var win;var cb_Group;var data = '';function funCheck(thisCheck){var selectStr = "";for (var j=0;j<5 ;j++ ){var cbObj = Ext.getDom("name"+j);if (cbObj && cbObj.checked){selectStr = selectStr + Ext.getDom("name"+j).value ; }}Ext.getDom("selectValue").value = selectStr;};function setChecked(){var selectValue = Ext.getDom("selectValue").value;selectValue = 'BC';for (var j=0;j<3 ;j++ ){var labelText = Ext.getDom("name"+j).value;if (selectValue.indexOf(labelText) >= 0){ Ext.getDom("name"+j).checked = true;}else{ Ext.getDom("name"+j).checked = false;}}};function dynamicGen(){var cbGroup = Ext.getCmp('cbCon');cbGroup.removeAll();var new_cbg = new Ext.form.CheckboxGroup( { xtype: 'checkboxgroup', fieldLabel: '新的多选组', id:'ElementTypeID', name :'ElementTypeID', columns: 10 });var newItems=[];for(var i=0;i<5;i++){var lText = String.fromCharCode(65 + i);var chkNew = {boxLabel: lText, name: "name"+i, inputValue: lText ,isChecked : false ,listeners: { check : funCheck}};newItems.push(chkNew);}new_cbg.items = newItems;cbGroup.items.add(new_cbg);alert(cbGroup.ownerCt.forceLayout);cbGroup.doLayout(false, false);};var items=[]; for(var i=0;i<3;i++) { var labelText = String.fromCharCode(65 + i);var chk = {boxLabel: labelText, name: "name"+i, inputValue: labelText ,isChecked : false ,listeners: { check : funCheck}};items.push(chk); }var cb_Group = new Ext.form.CheckboxGroup( { xtype: 'checkboxgroup', fieldLabel: '元素类型', id:'ElementTypeID', name :'ElementTypeID', columns: 10, anchor:"95%", msgTarget:"side" }); cb_Group.items = items;if(!win){win = new Ext.Window({title : '多ceckbox动态生成测试窗口',xtype:"window",width : 900,height : 600,plain : true,items : [{xtype:"fieldset",layout:"form",items:[{xtype:"textfield",id : 'selectValue',fieldLabel:"选项值",anchor:"100%"}]},{xtype:"fieldset",layout:"form",id : 'cbCon',renderTo : this.panel,items:[cb_Group]},{baseCls:"x-plain",buttons : [{type:"button",text:"动态生成",handler : function() { dynamicGen();}}]}]});}win.show();setChecked();});</script></head><body>

解决方案

引用new_cbg.items = newItems; cbGroup.items.add(new_cbg); 改成如下:new_cbg.items = newItems; cbGroup.add(new_cbg); 我用3.1版本测试的 成功 不报错 我点击取消选中的时候 事件触发了 上面的textfield内的值也发生变化了

时间: 2024-09-20 08:38:50

动态生成checkboxgroup出现的两个问题,麻烦给看一下的相关文章

JqueryMobile动态生成listView并实现刷新的两种方法

 本篇文章主要是对JqueryMobile动态生成listView并实现刷新的两种方法进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 JqueryMobile动态生成listView并实现刷新的两种方法   代码如下: function queryEntfernungen(tx, results)    alert("This Hello works");    var len = results.rows.length;      // This For works fin

JqueryMobile动态生成listView并实现刷新的两种方法_jquery

JqueryMobile动态生成listView并实现刷新的两种方法 复制代码 代码如下: function queryEntfernungen(tx, results)   alert("This Hello works");   var len = results.rows.length;     // This For works fine     for (var i = 0; i < len; i++) {       $("div[data-role=con

插件化研究代之dexmaker动态生成Activity

文章首发:插件化研究代之dexmaker动态生成Activity|大利猫 最近在研究Android应用的插件化开发, 插件化都是在解决以下几个问题: 如何把插件apk中的代码和资源加载到当前虚拟机. 如何把插件apk中的四大组件注册到进程中. 如何防止插件apk中的资源和宿主apk中的资源引用冲突. 我们已经解决了如何把apk中的代码和资源加载到当前应用的问题,上一篇文章中使用代理的方式实现了插件Activity的注册,demo完成了插件框架的最简单的雏形.但是我们也说到代理方式实现的缺陷,于是

从Java应用程序动态生成PDF文件

pdf|程序|动态 如果应用程序需要动态生成 PDF 文档,则需要 iText 库.开放源码的 iText 库使 PDF 文档的创建能够在瞬间完成.本文介绍了 iText 并提供了使用它从 Java ? 技术应用程序生成 PDF 文档的由浅入深的指南.我们创建了一个示例应用程序以更好地理解 iText. 很多应用程序要求动态生成 PDF 文档.这类应用程序包括银行生成用于电子邮件投递的客户报表,到读者购买特定图书章节并以 PDF 格式接收这些文档.例子罗列下去是很多的.在本文中,将使用 iTex

ASP动态生成的javascript表单验证代码

javascript|表单验证|动态 以网上down了一个ASP动态生成Form验证javascript的代码,自己扩容了一下.作者的大名我给忘了,不过我记得清楚,从第一条至第九条的代码都是该作者的原创.至于九至第十五条却是本人自己加的哦.而且由于本人水平有限,从第九条至第十五条不见得会条条生效啊?呵呵,其实把它贴在这里没有什么必要的,因为这点小会伎俩谁都会用的,我把它的作用定位为:开发时找不到该函数时到这里拷贝一下就可以了.呵,因为我即没有刻录机也没有移动硬盘.实在是没有办法把这些代码随身携带

asp动态生成wbmp图片的程序

程序|动态 asp动态生成wbmp图片的程序 (ASP2001)<%@ Language=VBScript %><% '函数1:'将字符串转换成二进制Function StoB(varstr)str2bin = ""For i = 1 To Len(varstr)varchar = Mid(varstr, i, 1)str2bin = str2bin & ChrB(AscB(varchar))NextStoB = str2binEnd Function '函数

用js+jsp实现在同一个下拉列表中,动态生成多级select选项

js|select|动态|下拉|下拉列表   经过两天苦战,总算用js+jsp搞定在同一个下拉框中,在不刷新页面的情况下,动态生成多级select选项 一.先确定需求及要达到的效果 要达到的效果如下图 [ ] 为了便于各位的调试,我将代码进行了简化,取数据部分我去掉了,各位可修改成自己用的数据 二.说明现将该设计中,用到的主要技巧列在下面1.将数据动态填入js的数组用如下3句话实现out.print("<script>");out.print("selprov[3

复杂表单的动态生成与动态验证

这里所谓的复杂表单,是指表单中包含多种不同的输入类型,比如下拉列表框.单行文本.多行文本.数值等.在经常需要更换这类表单的场合,需要有一个表单的动态生成程序.本文介绍的正是这样一个系统,它以数据库保存表单定义数据,利用ASP脚本动态生成表单HTML代码以及验证表单输入的脚本. 一.定义数据库表结构 在Web上经常可以看到"每周调查"之类的表单,这就是一种需要经常更新的表单.如果有一个动态生成表单及其验证脚本的程序,可以大大减少制作这些表单的工作量. 在本文的动态表单生成与验证示例中,我

以前收集的一些资料---如何使用ASP动态生成页面的祯结构

动态|页面                   让你的ASP控制Frame我以前说过使用response.redirect是不能够跳到另外一个Frame的把,呵呵,那么我们怎么来使用ASP来控制frame呢?下面将提供一个方法来解决这个问题.事实上,一共有两种方法控制ASP生成的HTML显示在哪一个Frame中.简单的是设置HTML的Form元素的基本标志即可.这个方法可以解决大多数简单情况下的页面定位问题.这个方法大家应该都见过,我就不详细说明了.但是问题是当出现一些复杂的情况时,我们怎么来控