使用变量创建的Javascript/HTML HREF不能使用空格
我正在使用HTML中的JavaScript从几个变量创建HREF链接。 第一个变量是Android文件路径开头的固定文本(每次都相同),第二个变量是从XML属性获取的文件名。 这一切都可以很好地工作,但只有在XML文档的file name变量中没有空格时,它才能正确地构造链接。 基本上,如果file name变量包含一个空格,它只会构造链接,直到文件名中的第一个空格为止,因此举个例子使用变量创建的Javascript/HTML HREF不能使用空格,javascript,html,regex,uri,space,Javascript,Html,Regex,Uri,Space,我正在使用HTML中的JavaScript从几个变量创建HREF链接。 第一个变量是Android文件路径开头的固定文本(每次都相同),第二个变量是从XML属性获取的文件名。 这一切都可以很好地工作,但只有在XML文档的file name变量中没有空格时,它才能正确地构造链接。 基本上,如果file name变量包含一个空格,它只会构造链接,直到文件名中的第一个空格为止,因此举个例子 **Correct link =** <a href="file:///sdcard/Clients/P
**Correct link =**
<a href="file:///sdcard/Clients/PB/example file name.pdf">example file name.pdf</a>
**Link my code incorrectly returns =**
<a href="file:///sdcard/Clients/PB/example">example file name.pdf</a>
**正确链接=**
**链接我的代码错误返回=**
非常感谢您的帮助。
谢谢
xmlDoc=loadXMLDoc(“PBFileNames.xml”);
x=xmlDoc.getElementsByTagName(“文件”);
变量路径=”file:///sdcard/Clients/PB/"; //这将在所有迭代之间保持不变
对于(i=0;i您必须转义URI
document.write("<a href=" + path + encodeURI(filename)+ ">" + filename + "</a>");
document.write(“”);
将文件名中的空格替换为%20
,然后重试。uri的文件名
部分包含空格。非常感谢raam86,我使用了encodeURI()在文件名上,它工作得很好。干杯!您好,我看到您是SO新手。如果您觉得有答案解决了问题,请单击绿色复选标记将其标记为“已接受”。这有助于将重点放在仍然没有答案的旧SO上。”
document.write("<a href=" + path + encodeURI(filename)+ ">" + filename + "</a>");