请问一下,当结束时间小于开始时间需要弹出一个对话框(提示时间选择有误),需要怎么做

0
截图如下:
1.png

已邀请:
8

Yuvv - BIEE独立顾问、业务架构 2013-08-07 回答

可以定制化错误提示信息,例如下图为一个正常的介于选择结果的仪表盘

1.jpg

由于判断错误的返回结果是来自与提示所作用的表或者图的提示返回结果,所以编辑(介于)提示所作用的表

2.jpg

在表的结果中选择编辑分析属性

3.jpg

显示结果为显示定制消息,添加代码

4.jpg

保存-返回仪表盘执行结束时间小于开始时间的选择情况,结果如下:

5.jpg

点击关闭即可从新选择了,谢谢!

JS代码如下:

<script type="text/javascript" language="javascript">
function sAlert(strTitle,strContent){
var msgw,msgh,bordercolor;
msgw=400;//提示窗口的宽度
msgh=100;//提示窗口的高度
titleheight=25 //提示窗口标题高度
bordercolor="#336699";//提示窗口的边框颜色
titlecolor="#99CCFF";//提示窗口的标题颜色

var sWidth,sHeight;
sWidth=document.body.offsetWidth;
sHeight=screen.height;
var bgObj=document.createElement("div");
bgObj.setAttribute('id','bgDiv');
bgObj.style.position="absolute";
bgObj.style.top="0";
bgObj.style.background="#777";
bgObj.style.filter="progid:DXImageTransform.Microsoft.Alpha(class=3,opacity=25,finishOpacity=75";
bgObj.style.opacity="0.6";
bgObj.style.left="0";
bgObj.style.width=sWidth + "px";
bgObj.style.height=sHeight + "px";
bgObj.style.zIndex = "10000";
document.body.appendChild(bgObj);

var msgObj=document.createElement("div")
msgObj.setAttribute("id","msgDiv");
msgObj.setAttribute("align","center");
msgObj.style.background="white";
msgObj.style.border="1px solid " + bordercolor;
msgObj.style.position = "absolute";
msgObj.style.left = "50%";
msgObj.style.top = "50%";
msgObj.style.font="12px/1.6em Verdana, Geneva, Arial, Helvetica, sans-serif";
msgObj.style.marginLeft = "-225px" ;
msgObj.style.marginTop = -75+document.documentElement.scrollTop+"px";
msgObj.style.width = msgw + "px";
msgObj.style.height =msgh + "px";
msgObj.style.textAlign = "center";
msgObj.style.lineHeight ="25px";
msgObj.style.zIndex = "10001";

var title=document.createElement("h4");
title.setAttribute("id","msgTitle");
title.setAttribute("align","right");
title.style.margin="0";
title.style.padding="3px";
title.style.background=bordercolor;
title.style.filter="progid:DXImageTransform.Microsoft.Alpha(startX=20, startY=20, finishX=100, finishY=100,class=1,opacity=75,finishOpacity=100);";
title.style.opacity="0.75";
title.style.border="1px solid " + bordercolor;
title.style.height="18px";
title.style.font="12px Verdana, Geneva, Arial, Helvetica, sans-serif";
title.style.color="white";
title.style.cursor="pointer";
title.title = "点击关闭";
title.innerHTML="<table border='0′ width='100%'><tr><td align='left'><b>"+ strTitle +"</b></td><td>关闭</td></tr></table></div>";
title.onclick=function(){
document.body.removeChild(bgObj);
document.getElementById("msgDiv").removeChild(title);
document.body.removeChild(msgObj);
}
document.body.appendChild(msgObj);
document.getElementById("msgDiv").appendChild(title);
var txt=document.createElement("p");
txt.style.margin="1em 0"
txt.setAttribute("id","msgTxt");
txt.innerHTML=strContent;
document.getElementById("msgDiv").appendChild(txt);
}
sAlert("","提示时间选择有误,请从新选择,谢谢!")
</script>
0

yujie360 2013-08-08 回答

已经测试过,问题描述的功能可以了,不过能不能提示错误后不提交,或者是返回原来的页面?
0

Yuvv - BIEE独立顾问、业务架构 2013-08-08 回答

不能···如果想从提示本身做判断BIEE产品目前没有提供比较便利的方法,所以只能提交以后通过结果来实现效果。这个是BIEE产品本身的局限性··如果硬是做二次开发实现功能,也可以····不过不值得啦··
0

yujie360 2013-08-08 回答

这个确实比较麻烦,还是很感谢你

要回复问题请先登录注册