0

我正在尝试使用 JavaScript 变量的值;但是,由于某种原因,document.write无法正常工作。

你能告诉我我做错了什么以及是否有其他方法可以做到这一点?这是我的 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

3 回答 3

2

什么是解析你的 url 变量?"${paramValue}" 不会被 JS 解释器解释。

不要费心在 Javascript 中手动解码/编码 URL ...只需使用内置的:

编码URIComponent(str) 编码URI(str)

在 JavaScript 中编码 URL?

于 2013-02-08T17:17:16.673 回答
0

我认为您需要在参数周围加上引号,因此 javascript 在替换后将其解释为字符串:

var url='${paramValue}';

但我同意 Hank - 使用内置函数。

于 2013-02-08T17:18:22.643 回答
-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>
于 2013-02-08T17:24:14.643 回答