2013-02-08 44 views
0

我正在嘗試使用JavaScript變量的值;但是,由於某種原因,document.write不起作用。HTML上的JavaScript變量

你能告訴我我做錯了什麼,如果有另一種方式做到這一點?這裏是我的JavaScript代碼:

<script type="text/javascript"> 
    var url=${paramValue}; 
    url = url.replace(/\s/g,"%20"); 
    document.write("<a href='" + url + "'>" + 
     "<img src='/folder1/folder2/folder3/folder4/folder5/image.png'" + 
     " width='70' height='20'></a>"); 
</script> 

變量url=${paramValue};工作,因爲我可以用螢火檢查。 圖像未顯示。

+4

「不工作」是什麼意思? – j08691 2013-02-08 17:12:08

+0

如果你這樣做,你會得到什麼:var url = $ {paramValue};警報(URL); – isherwood 2013-02-08 17:15:43

回答

2

什麼是解析你的網址變量? 「$ {paramValue}」不會被JS解釋器解釋。

不要打擾手動解碼/ Javascript中編碼的網址...只是使用內置的:

encodeURIComponent方法(STR) 是encodeURI(STR)

Encode URL in JavaScript?

0

我想你需要引用圍繞你的參數,所以javascript將其解釋爲替換後的字符串:

var url='${paramValue}'; 

但我同意漢克 - 使用內置函數。

-1
<html> 
<head> 
<script type="text/javascript"> 
function myfunction(){ 
    var url = $("#<%=url.ClientID %>").val(); 
    document.write("<a href='" + url + "'><img src='abc.jpg' width='70'height='20'>  
    </a>"); 
} 
</script> 
</head> 
<body> 
<form runat="server"> 
    <asp:TextBox ID="url" runat="server" /> 
    <input type="button" value="Clear" onclick="myfunction()" /> 
</form> 
</body> 
</html>