|
|
Q:如何动态创建表单控件呢? 比如表单上设置一个增加button,当我点击一下该button,那么表单上就会创建一个文本框;同时我在表单上设置一个删除button,当我点击一下该button,那么就会将该文本框删除。
A:该需求在业务允许的前提下,可考虑在表单内放包含元素,嵌套一个网格类型的视图来实现,或者采用js,动态实现增删行。具体实现脚本可类似以下示例:- <script>
- var i=2
- //allCount=1
- function insRow() //增加一行
- {
- x=ttb98.insertRow(ttb98.rows.length);
- var num=document.getElementById('ttb98').value; //ttb98为tableid,详见附件。
- x.ln=i;
- h2=x.insertCell(0);
- h1=x.insertCell(1);
-
- h2.innerHTML="";
- //c1.ln=allCount;
- h1.innerHTML= "新增行"+(i-1)+" :<input type=button value= '删除 ' ln= " + i + " onclick= 'javascript:delRow(); '> "
- i=i+1; //总计多少行
- // frm.count.value = i;
- }
- function delRow() //删除一行
- {
- line = parseInt(event.srcElement.ln,10);
- if (line> 0){
- for (j=1;j <ttb98.rows.length;j++) {
- if (ttb98.rows[j].ln==line) //
- {
- ttb98.deleteRow(j);
- i--;
- // frm.count.value = i;
- }
- }
- }
- }
- </script>
复制代码 附件是在平台采用js实现的动态增删行demo,具体效果可请先在平台建立一新表单,然后下载附件copy到到表单源码,保存之后,新建菜单链接至该表单即可。
js动态增删行示例.rar
(693 Bytes, 下载次数: 1485)
|
|