2012-11-29 162 views
1

我正在開發允許我在其界面中編寫自定義HTML和JavaScript的CRM系統,並且我可以通過使用散列引用CRM變量(例如當前進程狀態,日期等)值#variable.variablename#。於是,我就寫了下面的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> 

可能是什麼問題?

回答

2

我會guest虛擬機的#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 +ü)看到實際的JavaScript,你已經構造。

+0

相當可疑你怎麼是唯一的答案上沒有獲得同時莫名其妙的downvote –

+0

感謝您的答覆,但在你的代碼只有最後一個鏈接將顯示櫃面三個varialbes頁面具有值。 –

+0

@johnG對,固定。 –

1

這些都是無效的JS語句。將內容寫入文件,使用document.write

document.write('<div><a href="/Service1.svc/vf/img?imgid=5#variable.1#">View Page</a></div>'); 
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>'); 
} 
+0

謝謝,打字太快了錯誤,更新:-) – Nelson