Javascript 通过form.submit()传递属性;

Javascript 通过form.submit()传递属性;,javascript,Javascript,我试图在Django web应用程序中使用javascript处理单按钮上传文件,现在我需要进行两种类型的文件上传,为了实现这一点,我需要测试的name属性submit按钮,我需要知道是否有通过onchange=this.form.submit传递该文件的选项 这对我来说很好: {%csrf_令牌%} 代替 {%csrf_令牌%} 添加 我想做的是: {%csrf_令牌%} 替换为CSV {%csrf_令牌%} 添加CSV 可以为每个文件输入元素设置相同的类名 <input id="fil

我试图在Django web应用程序中使用javascript处理单按钮上传文件,现在我需要进行两种类型的文件上传,为了实现这一点,我需要测试的name属性submit按钮,我需要知道是否有通过onchange=this.form.submit传递该文件的选项

这对我来说很好:

{%csrf_令牌%} 代替 {%csrf_令牌%} 添加 我想做的是:

{%csrf_令牌%} 替换为CSV {%csrf_令牌%} 添加CSV
可以为每个文件输入元素设置相同的类名

<input id="file-upload-add" class="file-input" type="file" name="replace" />

<input id="file-upload-add" class="file-input" type="file" name="add" />
然后编写如下javascript,在触发相应的文件输入更改时执行表单提交

var inputs = document.getElementsByClassName("file-input");

for (let i = 0; i < inputs.length; i++) {
    inputs[i].onchange = function () {
        inputs[i].parentElement.submit();
    }
}

请记住,您的HTML必须采用相同的结构才能工作,即每个输入文件和表单标记必须具有相同的类名,才能成为输入文件元素的直接父级

您正在使用JavaScript提交表单,因此表单不会被发送


将名称和值改为放在。您有单独的表单,因此无需区分使用了哪个按钮。

为onchange创建一个eventhandler函数,并将名称和目标传递给该函数,最后调用submit,您可以链接任何教程来完成此操作吗?我在javascript中非常棒!问题是Django需要提交输入的名称,以便测试页面上提交的表单。我需要在Django视图中传递提交按钮的名称。