历史版本1 :JS实现清空控件内容 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:
1. 问题描述
在使用控件时,有时我们希望能够快捷的重置控件的内容,或者重置所有控件的内容,效果如下图所示:
2. 解决方案
只重置一个控件的值时,我们可以在js事件中获取需要重置的控件,执行reset()方法,从而清空该控件的内容。
当我们需要重置全部控件时,可以通过form.name_widgets获取参数界面上所有的控件,然后遍历每个控件并重置,代码如下:
  1. $.each(this.options.form.name_widgets,function(i,item){    
  2.     if (item.options.type !=='label') {item.setValue();item.setText();}   
  3. });;  
3. 示例
以上效果图中的两个清空按钮来说明如何实现重置控件内容。
打开模板%FR_HOME%\WebReport\WEB-INF\reportlets\doc\parameter\ComplexParaInter.cpt
3.1 重置单个控件内容的按钮
以上图中清空供应商按钮为例,说明如何重置单个控件内容。
在参数设计页面新建一个按钮控件,设定其名字为清空供应商,同时设置按钮点击事件,将供应商(supplierID)控件内容清空,具体的js如下:
  1. var supplierID = this.options.form.getWidgetByName("supplierID");  //获取supplierID控件  
  2. supplierID.setValue();supplierID.setText();  //将supplierID控件内容清空  
3.2 重置所有控件内容
在参数界面新建一个按钮控件,设定其名字为清空全部,同时设置按钮点击事件,事件js脚本为:

  1. $.each(this.options.form.name_widgets,function(i,item){    
  2.     if (item.options.type !=='label') {item.setValue();item.setText();}   
  3. });;