如何从HTML / Javascript中的函数访问URL?

时间:2018-11-28 17:49:26

标签: javascript html

所以不久前我开始学习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"
}

执行此操作时,它不会下载任何内容,只是一个普通的按钮,没有任何动作。

我该怎么办?

3 个答案:

答案 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"

在这里您要插入类似date1data2的内容,但是它在您的函数中不存在。您不能使用未定义的变量。

如果您跳过所有语法错误,然后查看命令

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