实际上,在我的网站上,我有一个表,其中每个版本都有很多下载链接,因此我可以更改用户尝试下载的文件版本。
就像这里是我桌子上的物品之一:
<tr>
<td> App</td>
<td id="0.9.0">0.9.0</td>
<td>02/01/2019</td>
<td><a href="#" aria-disabled="true" data-toggle="modal" data-target="#exampleModalCenter" onclick="version = document.getElementById("0.9.0").innerText; alert.version;>Download</a></td>
</tr>
按下载后,我会打开引导程序模版,在其中应输入正确的密码,然后用户按下载后,它应下载正确的文件版本。
这是我在模式按钮的onClick中使用的方法:
<script>
var input = document.getElementById("Key");
var btn = document.getElementById("download");
var version;
btn.addEventListener("click", function () {
if (input.value == "1234") {
window.location = '/App/App_0.9.0.apk'; (this 0.9.0 should be dynamic)
$("#exampleModalCenter").modal('hide')
}
});
</script>
更新后(Oen44回答):
我已将标签更改为此:
<tr>
<td>App</td>
<td>0.9.0</td>
<td>02/01/2019</td>
<td><a href="#" aria-disabled="true" data-toggle="modal" data-target="#exampleModalCenter" data-version="0.9.0" onclick="version = this.getAttribute('data-version');">Download</a></td>
</tr>
<tr>
<td>App</td>
<td>0.2.3</td>
<td>02/01/2019</td>
<td><a href="#" aria-disabled="true" data-toggle="modal" data-target="#exampleModalCenter" data-version="0.2.3" onclick="version = this.getAttribute('data-version');">Download</a></td>
</tr>
尽管脚本仍然相同:
var input = document.getElementById("Key");
var btn = document.getElementById("download");
let version;
btn.addEventListener("click", function () {
if (input.value == "1234") {
window.location = '/App/App_${version}.apk';
$("#exampleModalCenter").modal('hide')
}
});
但是当我尝试下载文件时却什么也没变
答案 0 :(得分:3)
两件事要改变
<td id="0.9.0">0.9.0</td>
-请勿使用该格式作为ID。
<td id="app-version">0.9.0</td>
-更好
let version = document.getElementById('app-version').innerText;
window.location = `/App/App_${version}.apk`; // now with generate /App/App_0.9.0.apk
<a href="#" data-version="0.9.0" onclick="version = this.getAttribute('data-version');">Download</a>
如果要使用${}
在JS中格式化字符串,则字符串必须在``
`/App/RealcoApp_${version}.apk`