所以不久前我开始学习HTML和JavaScript,我想知道如何访问URL /从我用JavaScript制作的函数中下载文件到另一个文件中,然后使用
导入它。<script src="jscriptSheet.js"></script>
也许我在搜索时用词不好,但没有找到任何对我有帮助的东西。我唯一看到的是做一个表单并将其发送到服务器,但这不是我所需要的(我认为)。
我正在做的是创建2个需要传递到URL的日期,以便它可以访问文件并下载它:
<div class="dateWrapper">
<p id="date1">Date1:</p>
<input id="date1INPUT" type="date">
<p id="date2">Date2:</p>
<input id="date2INPUT" type="date">
<br><br>
<button id="datesubmit" type="submit" onclick="downloadF()">Download file.</button>
</div>
以及使用JavaScript进行的功能:
function downloadF{
href="100.100.100.100/something/something.php?date1="+ date1 from the input above +"&date2="+ date2 from the input above +"&something=10.php"
}
执行此操作时,它不会下载任何内容,只是一个普通的按钮,没有任何动作。
我该怎么办?
答案 0 :(得分:1)
如果您要执行除提交之外的其他操作,则不希望输入type = submit。 INSTEAD使用下面的按钮,或附加到表单的提交处理程序,如果不想提交,请使用preventDefault
我使用ApplicationUser
,也可以使用location=
,但可能会被阻止
您的功能也应该是
window.open(url)
反正这里是一个例子
function functionname() { ... }
document.getElementById("datesubmit").addEventListener("click",function {
location="100.100.100.100/something/something.php"+
"?date1="+document.getElementById("date1INPUT").value+
"&date2="+document.getElementById("date2INPUT").value
})
如果您在PHP中设置标头,则会看到一个下载对话框
<div class="dateWrapper">
<p id="date1">Date1:</p>
<input id="date1INPUT" type="date">
<p id="date2">Date2:</p>
<input id="date2INPUT" type="date">
<br><br>
<button id="datesubmit" type="button">Download file.</button>
</div>
答案 1 :(得分:0)
function downloadF{
href="100.100.100.100/something/something.php?date1="+ date1 from the input above +"&date2="+ date2 from the input above +"&something=10.php"
}
语法无效。 JavaScript函数应定义为(非常基本),
var f1 = function(){
}
function f2(){
}
然后
href="100.100.100.100/something/something.php?date1="+ date1 from the input above +"&date2="+ date2 from the input above +"&something=10.php"
在这里您要插入类似date1
和data2
的内容,但是它在您的函数中不存在。您不能使用未定义的变量。
如果您跳过所有语法错误,然后查看命令
href="100.100.100.100/something/something.php?date1="+ date1 from the input above +"&date2="+ date2 from the input above +"&something=10.php"
您只是在设置变量href
,并且没有执行任何操作。
首先学习基本的JavaScript https://developer.mozilla.org/en-US/docs/Web/JavaScript
您的问题的答案是
如果目标文件可直接下载,则可以在函数内部使用window.open('the_target_url')
。
如果没有,
您应该使用PHP进行操作。请参考此链接Download file from PHP
答案 2 :(得分:0)
欢迎来到stackoverflow!
正如评论中已经提到的那样,当按钮不应该真正提交输入而是调用自定义javascript函数时,您不想将类型设置为“提交”。相反,您只想将类型设置为“按钮”。
此外,您应该像这样定义javascript函数(注意括号):
Line 1: using MySql.Data.MySqlClient;
要访问DOM元素,您可能需要看看here at w3schools