AJAX(异步JavaScript和XML)是一种通过客户端和服务器之间的异步数据交换来创建无缝交互式网站的技术。 AJAX有助于与服务器进行通信或部分页面更新,而无需传统的页面刷新。
我试图理解这种行为,其中第一个网络调用需要后续网络调用的两倍以上。我知道 DNS 解析不会超过 5-50 毫秒,而且只发生在初始阶段
WordPress 网站从前端访问 wp-admin/ajax.php 页面时显示 403 错误
我正在 Azure Web 应用程序上运行 WordPress,连接到不同 Windows 服务器上的 MySQL 服务器。在 Chrome 中加载上述页面时,它会显示 2 个弹出窗口 403 和禁止。检查
更改 ajxax jquery 和 .NET Core MVC 中多个标签的颜色
我正在创建一个功能,允许用户使用单选按钮选择答案。选择完所有答案后,用户点击提交,答案标签会显示以下3种情况: 当...
将数据从 JavaScript 发送到 Python Flask 时遇到问题
我正在运行一个简单的设置,其中应通过 Ajax 将字符串发送到我的 Flask 应用程序,但我收到错误代码 400:错误的请求。 JavaScript 代码: 标题= { '内容类型':'application/json...
如何从 Greasemonkey 脚本拦截 XMLHttpRequest?
我想使用 Greasemonkey 捕获 AJAX 请求的内容。 有人知道该怎么做吗?
我无法将Json数据发送到Djangoviews.py,我尝试使用Ajax,但它不起作用,而且还显示CSRF错误
我在 Django 项目中发出 AJAX POST 请求时遇到 CSRF 验证问题。这是我的代码的简化版本: **注册.html *** 在发出 AJAX POST 请求时,我在 Django 项目中遇到 CSRF 验证问题。这是我的代码的简化版本: **注册.html *** <form method="POST" onsubmit="return validateForm()"> (----this revieves the data------) {% csrf_token %} <label for="name">Name:</label> <input type="text" id="name" name="name" required /> <label for="email">Email:</label> <input type="email" id="email" name="email" required /> <label for="password">Password:</label> <input type="password" id="password" name="password" required /> <input type="submit" value="Register" name="createuser"/> </form> </div> </div> <script> let URLd ="{% url 'defaultpg' %}" let nameInput = document.getElementById("name"); let emailInput = document.getElementById("email"); let passwordInput = document.getElementById("password"); (------below funtion validates it -----) function validateForm() { var csrfToken = $("input[name='csrfmiddlewaretoken']"); let nameValue = nameInput.value; let emailValue = emailInput.value; let passwordValue = passwordInput.value; let isNameValid = /^[a-zA-Z]+$/.test(nameValue); let isEmailValid = /^\S+@\S+\.\S+$/.test(emailValue); let isPasswordValid = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$/.test(passwordValue); if (isNameValid) { if (isEmailValid) { if (isPasswordValid) { alert("Successful"); $.ajax({ type: "POST", url: '/defaultpg', headers: {"X-CSRFToken":'{{ csrf_token }}'}, data: { "name": nameValue, "email": emailValue, "password": passwordValue, 'csrfmiddlewaretoken': $("input[name=csrfmiddlewaretoken]") }, dataType: "json", success: function (data) { // any process in data alert("successful"); }, error: function () { alert("failure"); } }); } else { alert("Password must contain letters, capital letter, small letter, special character, and numbers with a length above 8"); } } else { alert("Please enter a valid Email Address"); } } else { alert("Please enter a valid Name"); } } </script> view.py @csrf_protect def defaultpg(request): if request.method == "POST": name = request.POST.get('name') email = request.POST.get('email') password = request.POST.get('password') print("------------------------") print(name) print(email) print(password) print("------------------------") #I put print statement just to see whether data is received or not return redirect('Entry') urls .py path('eafterhome/', views.defaultpg, name='defaultpg'), 我只想通过 view.defaultpg 接收数据,我是 django 新手,我正在为我的最后一年项目做这个,如果有一点帮助就好了 试试这个。 <form method="POST" id="someForm"> {% csrf_token %} <label for="name">Name:</label> <input type="text" id="name" name="name" required /> <label for="email">Email:</label> <input type="email" id="email" name="email" required /> <label for="password">Password:</label> <input type="password" id="password" name="password" required /> <input type="submit" value="Register" name="createuser"/> </form> <script> const someForm = document.getElementById("someForm") someForm.addEventListener("submit", (e) => { e.preventDefault() // prevent default behavior of the form var csrfToken = $("input[name='csrfmiddlewaretoken']").val(); // rest of your logic goes here.... }) </script> 另请注意:如果您将 json 数据发送到 django 视图..您可以像这样处理传入数据: def defaultpg(request): if request.method == "POST": import json data = json.loads(request.body.decode('utf-8')) name = data.get("name") email = data.get('email') password = data.get('password')
使用 AJAX 将 JavaScript 变量发送到 PHP 文件时遇到问题 - 出现“未设置变量”
我正在尝试将total_points 的值从JavaScript 文件发送到PHP 文件,我将在其中将该值插入到数据库的列中。 $.ajax({ 类型:'发布', url: 'statsaver.php', ...
目前我正在使用带分页的数据表。现在,我最近添加了 Datatable.buttons 库以使用“导出到 Excel”选项。现在这个功能工作正常,但它只导出前 10 个...
当找到数据时,可以在网络文档中显示,但如果未找到数据,则无法显示“未找到数据”的描述,并且还会出现错误消息,例如...
如何使用javascript forloop在点击时获取html中data-id的值并返回值
这是我的html {% if t_ques %} 今天 {% 表示 t_... 中的项目 这是我的html <ul class="conversations"> {% if t_ques %} <li class="grouping">Today</li> {% for item in t_ques %} <li class="active"> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} {% if y_ques %} <li class="grouping">Yesterday</li> {% for item in y_ques %} <li> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} {% if s_ques %} <li class="grouping">Previous 7 days</li> {% for item in s_ques %} <li> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} {% if more_s_ques %} <li class="grouping">Previous 30 days</li> {% for item in more_s_ques %} <li> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} </ul> </div> 我一直在尝试使用 JavaScript 单击时获取任何 data-pk 的值,但似乎无法实现。这一直说 currentTarget 未定义,当我用 target 替换它时,它说同样的事情。然后,如果我将其替换为 document.querySelector("#convers"),它只会给出第一个值,无论单击哪个 这是我的 JavaScript const conversationButtons = document.querySelectorAll("#convers"); conversationButtons.forEach(button => { button.addEventListener("click", getId); }); function getId(e){ var idValue = e.currentTarget.getAttribute('data-pk'); console.log(idValue); //output corresponding target-id if(!chat_id){ url = `/chat-previous/${idValue}/` }else{ url = 'initiate-chat/' } return url; } $.ajax({ type: 'POST', url: getId(), data: { message: usermsg, chatId: chat_id, // itemId: item_id, csrfmiddlewaretoken: $('input[name=csrfmiddlewaretoken]').val(), action: 'post' }, success: function(json){ const res = json['chats'] setTimeout(() => { hideTyping(); body.appendChild(mgses(res, "assistant")); scrollToBottomOfResults(); }, 1000); console.log(json) }, error: function(rs, e){ setTimeout(() => { hideTyping(); body.appendChild(setBotResponse("bot")); scrollToBottomOfResults(); }, 600); console.log(rs.error); }, }); 我使用了其他方法,例如 const getId = () => { console.log(document.querySelector(".conversation-button").getAttribute('data-pk')) if(!chat_id){ url = `/chat-previous/${document.querySelector(".conversation-button").getAttribute('data-pk')}/` }else{ url = 'initiate-chat/' } return url; } conversationButtons.forEach(button => { button.addEventListener("click", getId); console.log(button.getAttribute('data-pk')); }); 仍然无法得到我真正想要的。有什么方法可以实现这个目标吗? 委托并使用按钮的类 document.querySelector('.conversations').addEventListener('click', (e) => { let tgt = e.target.closest('.conversation-button'); if (!tgt) return; const idValue = tgt.dataset.pk; console.log(idValue); //output corresponding target-id return chat_id ? 'initiate-chat/' : `/chat-previous/${idValue}/` }) 您做出了多个错误的假设,第一个是您不能有多个具有相同 id 的元素,这将导致您描述的确切行为“它需要第一次出现的 id” 第二件事是你可能想在点击时发出ajax请求,但你构建代码的方式并不能做到这一点。 要解决这些问题,请生成如下 html button.conversation-button button.conversation-button button.conversation-button 然后向所有具有 .conversation-button 类的元素添加一个事件侦听器,并将您的 ajax 调用包装到一个函数中,主要是您已经拥有的函数。 const conversationButtons = document.querySelectorAll(".conversation-button"); conversationButtons.forEach(button => { button.addEventListener("click", doStuff); }); ... function doStuff(e) { $.ajax( ... url: getId(e) ... } function getId(e) { let idValue = e.currentTarget.getAttribute('data-pk'); let url = ...; ... return url; // } 只是一些伪代码让你得到一个想法,祝你好运:)
H。我需要通过ajax发送csv文件。我写了这段代码 $('#send-csv').click(function(){ var CSRF_TOKEN = document.querySelector('meta[name="csrf-token"]').getAttribute("c...
嗨,有人可以帮忙吗?以下是请求和错误: 错误 “未找到指定的集成器密钥或已禁用。未指定集成器密钥。” JSOn 请求:
我的post方法如下图: $(".buttons").click(function(){ var gettopic=$.post("topic.php", {id: topicId}, function(result){ // 处理返回结果的代码 }); }) 我尝试...
我正在使用 @ControllerAdvice 进行全局异常处理。但如果请求是 ajax(xhr),我想以 Json 格式返回异常,如果不是,我想将异常显示为 html。 所以...
在 ASP.NET Core Razor 视图中 POST 错误时显示错误?
我正在尝试找出显示可在我的应用程序的所有页面中显示的通用错误消息的最佳方式。执行表单 POST 请求时应显示错误视图。 ...
ASP.NET Core 返回“名称‘Ajax’在当前上下文中不存在”
如果我在 ASP.NET 4.5 中启动一个新项目,选择管理 NuGet 包,搜索 Ajax,然后安装 Ajax Unobtrusive,然后我可以进入我的 .cshtml 文件并输入 @Ajax.___,例如@Ajax.beginForm。 我...
我尝试在ajax中发送表单而不重新加载页面,但我看到,文件上的链接不存在...... 我有下一个表格: 我尝试在ajax中发送表单而不重新加载页面,但我看到,文件上的链接不存在... 我有下一个表格: <form id="settings" method="POST" enctype="multipart/form-data"> ... <input type="file" id="logo" style="display:none;" name="logo" accept="image/png, image/jpeg, image/gif"> <button type="submit" id="send" class="btn btn-primary">save</button> </form> Ajax 脚本: $('#settings').submit(function(e){ e.preventDefault(); var form = $(this).serialize(); alert(form); // file is not attached... $.ajax({ url : '/settings', type : 'POST', crossDomain : false, data : form, contentType : 'multipart/form-data', dataType : 'json', progressData: false, cache : false, success : function(r){ alert (111); } }).fail(function(){ console.log('Error occured!'); }); }); 在服务器端,我收到错误: org.apache.tomcat.util.http.fileupload.FileUploadException:请求被拒绝,因为未找到多部分边界 我尝试不序列化表单,而是写了 data : form -> data : new FormData(this) 此选项会导致错误“非法调用”。如何在不重新加载页面的情况下发送带有文件的表单? 要使用 AJAX 发送带有文件的表单而不重新加载页面,您需要使用 FormData 来正确处理文件上传。 <form id="settings" method="POST" enctype="multipart/form-data"> <!-- Other form fields --> <input type="file" id="logo" name="logo" accept="image/png, image/jpeg, image/gif"> <button type="submit" id="send" class="btn btn-primary">Save</button> </form> $(document).ready(function() { $('#settings').submit(function(e){ e.preventDefault(); var formData = new FormData(this); $.ajax({ url: '/settings', type: 'POST', data: formData, contentType: false, processData: false, cache: false, success: function(response){ alert('Form submitted successfully!'); // Handle the response from the server }, error: function(){ console.log('Error occurred!'); } }); }); });
我已经设法抄近路到目前为止了! 我有一个客户数据库。我有这个漂亮的 HTML 表单需要填写。当我单击“提交”时,它会在服务器上填充一个可填写的 PDF。 当你开始...
即使在 Flask 应用程序中启用了 CORS,也未设置 Cookie
请注意:像这样的问题有很多,但没有一个对我有用,这就是我问这个的原因。 我的 REST API 是一个 Flask 应用程序。我的 /login 端点使用 JWT 并设置
在JS中,我使用ajax来更新表单,如下所示: $.ajax({ 类型:“帖子”, url: "updateForm.asp", 数据:{“a”:1,“b”2,“c”:3}, 成功: