检查变量是否为空

时间:2012-11-29 09:02:03

标签: javascript

我正在开发一个CRM系统,允许我在其界面中编写自定义HTML和JavaScript,我可以使用哈希值#variable.variablename#来引用CRM变量(例如当前进程状态,日期等)。所以我尝试编写以下JavaScript但问题是,无论是否存在三个变量中的任何一个,都不会显示任何链接:

<script type="text/javascript">
if ( #variable.1# != null) {
<div><a href="/Service1.svc/vf/img?imgid=5#variable.1#" >View Page</a></div> }

if ( #variable.2# != null) {
<div><a href="/Service1.svc/vf/img?imgid=5#variable.2#" >View Page</a></div>
}

if ( #variable.3# !=null) {
<div><a href="/Service1.svc/vf/img?imgid=5#variable.3#" >View Page</a></div>
}

</script>

可能是什么问题?

3 个答案:

答案 0 :(得分:2)

我请客人说#variable.1#(2和3)的内容不是有效的javascript。也许您需要将它们用引号括起来,例如"#variable.1#"

另外,你需要document.write html - 你不能只是把它放在一条线上并期望出现。

<script type="text/javascript">
var html = '';
if ( "#variable.1#" != null) {
    html += '<div><a href="/Service1.svc/vf/img?imgid=5#variable.1#" >View Page</a></div>'
}

if ( "#variable.2#" != null) {
    html += '<div><a href="/Service1.svc/vf/img?imgid=5#variable.2#" >View Page</a></div>'
}

if ( "#variable.3#" !=null) {
    html += '<div><a href="/Service1.svc/vf/img?imgid=5#variable.3#" >View Page</a></div>'
}

document.write(html);

另外,考虑使用“查看源代码”(Firefox上的 Ctrl + U )来查看您构建的实际Javascript。

答案 1 :(得分:1)

这些是无效的JS语句。要将内容写入文档,请使用document.write

document.write('<div><a href="/Service1.svc/vf/img?imgid=5#variable.1#">View Page</a></div>');

答案 2 :(得分:0)

尝试将您的CRM变量用单引号括起来,这样它们就会被解释为javascript中的字符串类型,并使用document.write来编写html内容,如下所示:

if ( '#variable.1#' != null) {
   document.write('<div><a href="/Service1.svc/vf/img?imgid=5#variable.1#" >View Page</a></div>');
}
if ( '#variable.2#' != null) {
   document.write('<div><a href="/Service1.svc/vf/img?imgid=5#variable.2#" >View Page</a></div>');
}

if ( '#variable.3#' !=null) {
   document.write('<div><a href="/Service1.svc/vf/img?imgid=5#variable.3#" >View Page</a></div>');
}