好吧,情况是这样的。我想向 BIRT 中的列添加超链接,但我还想在超链接的末尾添加一行。
要做到这一点,通常我会这样做。
http://example.com/myfolders/myfiles/+ row["uuid"]
在此屏幕中。
但是,我希望如果某一行为空,则该行没有附加超链接。
Javascript 会像这样。
if(row["uuid"]==null){
row["check_no"]
} else { <a href="http://example.com/myfolders/myfiles/<VALUE-OF>row["uuid"]</VALUE-OF>"><VALUE-OF>row["check_no"]</VALUE-OF></a>
这不起作用,因为它包含 HTML。所以当我尝试将整个内容转换为 HTML 时,结果是这样的。
<script type="text/javascript">
if(row["uuid"]===null){
</script>
<VALUE-OF>row["check_no"]</VALUE-OF>
<script type="text/javascript"> } else {
</script> '<a href="http://example.com/myfolders/myfiles/<VALUE-OF>row["uuid"]</VALUE-OF>"> <VALUE-OF>row["check_no"]</VALUE-OF></a>'
<script type="text/javascript"> } </script>
这行不通。还有其他方法可以做到这一点吗?
最佳答案
此 JavaScript 片段不起作用,因为它混合了客户端和服务器端表达式。您是否尝试通过测试动态 URI 表达式中的 null 值来实现相同的目的,如下所示:
if (row["uuid"]!=null){ "http://example.com/myfolders/myfiles/" + row["uuid"] }
当 uuid 为 null 时,该表达式不会返回任何值,因此不会创建超链接。
如果有帮助请告诉我。
关于javascript - 在HTML中使用JS条件在birt中获取不同的超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27694990/