javascript - 如何在循环中使用ajax发送单个请求

标签 javascript python django ajax

我为我们的客户端电子邮件更新创建了一个简单的邮件程序,但是我怎样才能一个一个地发送数据并在服务器端处理每个数据

html:


<p class="response"></p>

<form id="send_updates">
    {% csrf_token %}
    <textarea name="mail-list" class="mails" id="mails"></textarea>
    <button type="submit"> start sends </button>
</form>

JavaScript:

let mails = $('#mails').val().split('\n');
for(let i = 0; i <= cc.length; i++){
    $.ajax({
        cache: false,
        type: 'post',
        url: "{% url 'send_mail' %}",
        data: {'email': mails[i]},
        async: true,
        beforeSend:function(xhr, settings){
            xhr.setRequestHeader("X-CSRFToken", "{{ csrf_token }}");
        };
        success: function(data){
            if (data.success) == true{
                $('.response').append(mails[i] + ' sent!')
            }else{
                $('.response').append(mails[i] + ' not sent!')
            };
        }
    });

但是!无论是否成功,它都会发送所有请求而不等待

编辑:

如果该电子邮件发送成功与否,我们要逐一监控!

最佳答案

尝试设置

    async: false,

如下图:

    let mails = $('#mails').val().split('\n');
    for(let i = 0; i <= cc.length; i++){
    $.ajax({
      cache: false,
      type: 'post',
      url: "{% url 'send_mail' %}",
      data: {'email': mails[i]},
      async: false,
      beforeSend:function(xhr, settings){
        xhr.setRequestHeader("X-CSRFToken", "{{ csrf_token }}");
      };
      success: function(data){
        if (data.success) == true{
            $('.response').append(mails[i] + ' sent!')
        }else{
            $('.response').append(mails[i] + ' not sent!')
        };
      }
     });

引用What does "async: false" do in jQuery.ajax()?

关于javascript - 如何在循环中使用ajax发送单个请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57831741/

相关文章:

django - 如何设置运行Django的AWS Elastic Beanstalk Docker平台?

javascript - 地址栏中的 Firefox 6 javascript

javascript - 我可以通过 jQuery 调用创建非自关闭标签吗

python - 想要知道有多少对象位于两个不同子集的重叠部分

Python CSV 作为字典读入,第 n 行作为标题

python - Django + MySQL : savepoint does not exist?

javascript - 在发布功能中替换文档的属性

javascript - React axios 多文件上传

python - 有没有等同于 Memcpy 的 Python

python - 如何在 Django 的单元测试期间禁用翻译?