[Ext.Net]动态生成控件(二)--js动态添加文本框
转自:http://www.ext.net.cn/forum.php?mod=viewthread&tid=11931
点击一个按钮就出现一行控件,点击删除控件就可将一行控件删除,这是不是你一直以来都想实现的需求呢?
本帖就来解答这个问题:
首先先放几个效果图,看你是不是需要这样的需求,如果是再往下看帖哦。
- 下图是刚开始的状态
- 下图是新增了几行控件的状态
- 下图是删除了第二行的状态
接下来是实现的方法:
- 上面的第一张图(默认状态下)是在需要在前台布局的 代码如下
- <ext:Window ID="winEdit">
- Width="700" Hidden="true" Modal="true" Title="課件地址" AutoScroll="true" ButtonAlign="Center">
- <items>
- <ext:panel ID="pnl_urls">
- <content>
- <table>
- <tbody>
- <tr>
- <td>
- <ext:Label ID="lbl_url_txt">
- <ext:Button ID="btn_addurl">
- <Listeners>
- <Click Fn="newurl" />
- </Listeners>
- </ext:Button>
- </td>
- </tr>
- <tr>
- <td>
- <ext:Panel>
- <Items>
- <ext:TextField ID ="UrlName_1">
- </Items>
- </ext:Panel>
- </td>
- <td>
- <ext:Panel ID ="pnl_classurl">
- <items>
- <ext:TriggerField ID ="url_1">
- <Listeners>
- <TriggerClick Fn ="delurl" />
- </Listeners>
- </ext:TriggerField>
- </items>
- </ext:Panel>
- </td>
- </tr>
- </tbody>
- </table>
- </content>
- </ext:panel>
- </items>
- <buttons>
- <ext:Button ID ="btn_saveurls">
- <Listeners>
- <Click Handler ="SaveEdit()" />
- </Listeners>
- </ext:Button>
- <ext:Button ID ="btn_cancelurls">
- <Listeners>
- <Click Handler ="CancelEdit()" />
- </Listeners>
- </ext:Button>
- </buttons>
- </ext:Window>
复制代码
- 上面的第二张图(新增行状态下)是在页面上"新增课件地址"的按钮上家点击事件的完成的 js代码如下
- //新增課件地址文本框
- function>
- panel.doLayout();
- //課件標籤
- var>
- pnl.doLayout();
- var>
- var>
- var>
- var Nameid = "UrlName_" +>
- id:>
- trigger.setValue(ismark);
- }
- panel.insert(parseInt(items + 1),>
- label = "課件" + (parseInt(panel.items.items[items - 1].id.split('_')[1]) + 1).toString();
- }
- var>
- id: Nameid,
- fieldLabel: " ",
- labelWidth: 5,
- labelSeparator: " ",
- width: 100,
- value: label
- })
- pnl.insert(parseInt(items + 1), txt);
- pnl.doLayout();
- }
复制代码
- 上面的第三张图(删除状态下)是在页面新增完的行最右边的“X”点击事件完成的 js代码如下
- //移除課件地址文本框
- function>
- var>
- if (panel.items.length > 1) {
- panel.remove(el);
- panel.doLayout();
- pnl.remove(Ext.getCmp("UrlName_" +>
- var>
- if (panh <= "380") {
- if (winh >= "140") {
- Ext.getCmp("winEdit").setHeight(parseInt(Ext.getCmp("winEdit").getHeight()) - 25);
- }
- }
- }
复制代码
[Ext.Net]动态生成控件(二)--js动态添加文本框的更多相关文章
- Silverlight动态生成控件实例
刚学习Silverlight,做了一个动态创建控件的实例 实现结果:根据已有的控件类名称,得到控件的实例化对象 实现思路1:就是定义一个模板文件,将类名做为参数,在silverlight中使用Srea ...
- Asp.net web form 动态生成控件的注意事项
Asp.net页面生命周期 页面初始化 Page_Init 加载View State LoadViewState 回发数据处理 LoadPostData ...
- Asp.net中使用文本框的值动态生成控件的方法
这篇文章主要介绍了Asp.net中使用文本框的值动态生成控件的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 看到一个网友,有论坛上问及,动态的生成checkbox控件,在文本框中输入一个“花 ...
- WPF: WrapPanel 容器的数据绑定(动态生成控件、遍历)
原文:WPF: WrapPanel 容器的数据绑定(动态生成控件.遍历) 问题: 有一些CheckBox需要作为选项添加到页面上,但是数目不定.而为了方便排版,我选择用WrapPanel ...
- Winforn中使用代码动态生成控件
场景 有时候需要根据配置文件在窗体中使用代码动态生成控件. 比如读取xml配置文件中的节点数量,然后在窗体中生成指定数量的RadioGroup控件. 实现 新建一个窗体,在窗体的加载完之后的事件中 p ...
- Unity UGUI动态生成控件
一. 首先你得先清楚RectTransform组件的一些程序控制 1. 先得到UGUI控件上面的RectTransform组件 RectTransform rtr = gameObject.GetCo ...
- (五)ASP.NET中动态生成控件
今天被问到如何在ASP.NET 页面中动态创建一批控件,并且希望在后续代码中能访问到这些动态创建的控件.我用下面的例子来解释这个问题 ================================= ...
- (四)动态生成控件,点击button添加控件
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- c# winform动态生成控件与获取动态控件输入的值
差不多有2年没有写winform程序,一直都是写bs.最近项目需要,又开始着手写一个小功能的winform程序,需要动态获取xml文件的节点个数,生成跟节点个数一样的textbox, 最后还要获取操作 ...
随机推荐
- JavaScript 调试
在编写 JavaScript 时,如果没有调试工具将是一件很痛苦的事情. JavaScript 调试 没有调试工具是很难去编写 JavaScript 程序的. 你的代码可能包含语法错误,逻辑错误,如果 ...
- 分布式一致性协议Raft原理与实例
分布式一致性协议Raft原理与实例 1.Raft协议 1.1 Raft简介 Raft是由Stanford提出的一种更易理解的一致性算法,意在取代目前广为使用的Paxos算法.目前,在各种主流语言中都有 ...
- Shell脚本了解
一.什么是Shell Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁.Shell既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面, ...
- Python rich comparisons 自定义对象比较过程和返回值
Classes wishing to support the rich comparison mechanisms must add one or more of the following new ...
- 28 自定义View流式布局
流式布局每行的行高以本行中最高的元素作为高,如果一个元素放不下到一行时直接到第二行 FlowLayoutView package com.qf.sxy.customview05.widget; imp ...
- 将String转换为其表示的路径画到屏幕上
关于这个问题,我已经在另一篇blog中有所提及: CoreText精彩文字轮廓绘制动画的一点改进 不过原有的转换代码使用Obj-C写的,在这里我们尝试将其转换为Swift语言,然后利用它实现一个测试小 ...
- [Flask]学习杂记--模板
这个学习杂记主要不是分享经验,更多是记录下falsk的体验过程,以后做东西在深入研究,因为django之前用的时间比较长,所以很多概念都是一看而过,做个试验了解下flask的功能. flask中使用是 ...
- T-SQL中的APPLY用法(半翻译)
本文接上文:T-SQL 中的CROSS JOIN用法(半翻译) 同样可用于微软认证70-461: Querying Microsoft SQL Server 2012考试的学习中. --------- ...
- hive的strict模式;where,group by,having,order by同时使用的执行顺序
主要限制三种情况 (1) 有partition的表查询需要加上where子句,筛选部分数据实现分区裁剪,即不允许全表全分区扫描,防止数据过大 (2) order by 执行时只产生一个reduce,必 ...
- leetcode 3 Longest Substring Without Repeating Characters最长无重复子串
Given a string, find the length of the longest substring without repeating characters. For example, ...