javascript - 防止在加载文件时单击表单按钮

标签 javascript jquery

我正在使用以下代码片段,它允许一个人使用一个上传按钮上传最多 3 个文件。上传文件时,会运行动画来代替上传按钮。

我的要求是,我需要防止用户在上传文件时单击任何输入字段按钮。我不想为此使用 hide() 函数。 jQuery 中有没有一种方法可以阻止在文件上传/加载动画运行时单击输入字段按钮。 最近开始使用 jQuery,所以仍然是一个初学者,因此很想为此使用一个简单的解决方案。谢谢!

<script type="text/javascript">
    $(document).ready(function() {
        $(document).on("click", ".UploadBtn", function(event) {
            $(".p").each(function(file) {
                if  ($(this).val()) {
                    $(".loader").show();
                    $(".spinner").show();
                    $(".UploadBtn").hide();
                }
            })
        });
    });
</script>

我的 HTML 代码如下。 “p”类用于{{ form.photo1 }} , {{ form.photo2 }} & {{ form.photo3 }} ;

<div class="mtl mbl">
{{ form.photo1 }}
</div>
<div class="loader">
<div class="spinner"></div>
loading</div>
<input type="submit" class="UploadBtn btn bm bco mbs mts" style="border-color:#f57c00;" value="Upload">

<div class="mtl mbl">
{{ form.photo2 }}
</div>
<div class="loader">
<div class="spinner"></div>
loading</div>
<input type="submit" class="UploadBtn btn bm bco mbs mts" style="border-color:#f57c00;" value="Upload">

<div class="mtl mbl">
{{ form.photo3 }}
</div>
<div class="loader">
<div class="spinner"></div>
loading</div>
<input type="submit" class="UploadBtn btn bm bco mbs mts" style="border-color:#f57c00;" value="Upload">

enter image description here

When the upload button, which the red button is pointing at, is clicked an animation starts to run in its place while the file is getting uploaded. During this I want to prevent anyone from clicking on the choose file (), the blue arrow is pointing at it.

最佳答案

尝试使用 prop 禁用上传按钮

$(document).ready(function() {
 $(document).on("click", ".UploadBtn", function(event) {
  $(".p").each(function(file) {
    if  ($(this).val()) {
      $(".loader").show();
      $(".spinner").show();
      $(".UploadBtn").prop("disabled", "true");
    }
  })
 });
});

关于javascript - 防止在加载文件时单击表单按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45334780/

相关文章:

javascript - 动态添加Spring MVC JSP表单:input using JS giving binding errors

jquery - 从字符串中提取html元素

javascript - 从 iframe 到 iframe 的访问 - Angular 场景

javascript - 在同一页面中加载多个带有自定义标题的手持设备

javascript - 在angularjs中一次选择一个项目

javascript - 验证 React-Bootstrap-Typeahead 输入

javascript - 在 Javascript 中使用 JQuery Mobile 添加项目到列表

c# - 将多个参数从 jquery ajax GET 传递给 .asmx

javascript - 检索两个列表,对值进行排序和比较,然后显示所有结果

javascript - 使用ajax作为评论表单,它给了我500内部错误,但没有脚本它可以工作,这意味着我的脚本是错误的;对吗?