【转】如何为参数报表增加重置功能

润乾报表中参数模版与报表结合发布的设计,使得在页面中对报表数据进行过滤查看非常简单。在实际应用中,我们经常会遇到多次选择参数,但当参数选择非常多的时候,每次清空重新填写就很麻烦,有没有什么简单的办法来解决呢?

我们可以给参数模版增加一个”全部重置”的按钮,下面就来介绍一下。

第一步,我们在页面中来增加一个按钮,点击这个按钮触发重置函数:

<input type=”button” name=”Submit” onClick=clearForm(’form1′) value=”重置”>

第二步,我们在jsp中编写上述的这个重置函数clearForm:

<script language=”javascript”>
function clearForm(formName)
{
var formObj = document.forms[formName];
var formEl = formObj.elements;
for (var i=0; i<formEl.length; i++)
{
var element = formEl[i];
if (element.type == ’submit’) { continue; } //跳过提交按钮
if (element.type == ‘reset’) { continue; } //跳过重置按钮
if (element.type == ‘button’) { continue; } //跳过普通按钮
if (element.type == ‘hidden’) { continue; } //跳过隐藏域
if (element.type == ‘text’) { element.value = ”; } //如果是编辑框,清空
if (element.type == ‘textarea’) { element.value = ”; } //如果是大文本编辑框,清空
if (element.type == ‘checkbox’) { element.checked = false; } //如果是复选框,清空
if (element.type == ‘radio’) { element.checked = false; } //如果是单元按钮,清空
if (element.type == ’select-multiple’) { element.selectedIndex = -1; } //如果是下拉复选框,清空
if (element.type == ’select-one’) { element.selectedIndex = -1; } //如果是下拉单选框,清空
}
}
< /script>

这样,我们在页面中就可以看到参数重置的效果了

在实际使用过程中,第二步需要这样修改一下

<script type="text/javascript" language="javascript">
function clearForm(formName){

var formObj = document.forms[formName];
var formEl = formObj.elements;
for (var i=0; i<formEl.length; i++){

var element = formEl[i];
if (element.type == 'submit') { continue; }//跳过提交按钮
if (element.type == 'reset') { continue; } //跳过重置按钮
if (element.type == 'button') { continue; } //跳过普通按钮
if (element.type == 'password') { element.value = '';} //跳过普通按钮
if (element.type == 'hidden' && element.name != 'resultPage') { element.value = ''; } //隐藏域非[name = 'resultPage]的清空
if (element.type == 'text') { element.value = ''; } //如果是编辑框,清空
if (element.type == 'textarea') { element.value = ''; } //如果是大文本编辑框,清空
if (element.type == 'checkbox') { element.checked = false;} //如果是复选框,清空
if (element.type == 'radio') { element.checked = false;} //如果是单元按钮,清空
if (element.type == 'select-multiple') { element.selectedIndex = -1; } //如果是下拉复选框,清空
if (element.type == 'select-one') { element.selectedIndex = -1; } //如果是下拉单选框,清空

}

}
</script>

注意:转载文章,标点错误

【转载】http://bbs.raqsoft.com.cn/portal.php?mod=view&aid=444

posted @ 2018-03-01 13:54  白天過後的黑夜  阅读(332)  评论(0编辑  收藏  举报