首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >通过AJAX发送表/网格对象

通过AJAX发送表/网格对象
EN

Stack Overflow用户
提问于 2014-07-08 06:22:15
回答 1查看 1K关注 0票数 2

简短的描述..。

我的站点中有一个可编辑的jqWidgets网格,但与传统的可编辑网格不同,在编辑一行时,我不想更新数据库,而是在按下“保存”按钮时立即更新整个网格。

考虑到这一点,我只能看到两种可能的选择:

  1. 以某种方式将整个网格对象串成一个查询字符串,并向服务器发送1个AJAX请求。
  2. 或者,循环遍历每一行并对网格中的每一行执行AJAX请求。

我的问题是,我根本不知道哪种方法更好,因为两者都有各自的复杂性。选项1上的查询字符串可能是天文数字,并且超过内存限制,因为用户试图通过POST请求传递网格的全部内容。但是,后一种解决方案可能会导致问题,因为它正在为网格中的每一行执行AJAX请求。想象一下,如果网格中有100行,甚至是1000行!!

我的问题

因此,有谁能在不超过内存限制的情况下想出一种有效的方法来实现这一点,同时又避免发出多个AJAX请求?

更多信息

如果上面的内容不清楚,请考虑以下javascript数组:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[
    { name: 'Ben', age: 23, occupation: 'Developer' },
    { name: 'Charlie', age: 24, occupation: 'Receptionist' },
    { name: 'Jemima', age: 18, occupation: 'Designer' }
]

现在,尝试确定在一个查询中将所有这些信息传递给PHP的最佳方法?

EN

回答 1

Stack Overflow用户

发布于 2014-07-14 09:57:49

在源对象上,有一个updaterow函数,它接受rowid、newdata和commit参数:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
updaterow: function(rowid, newdata, commit)

newdata是一个json对象,表示网格中更新的行,提交是您需要调用的回调,以考虑已接受的更改。

在此函数中,您可以获取更新的rowdata对象,并根据rowid将其抛出到关联数组中(以确保更改的行只被发送一次)。最后,打电话

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
commit(true)

现在,您可以在单击按钮时调用一个函数,该按钮使用更新的行数据进行ajax发布:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var editedRows = {};
var source = {
  localdata: [], // your data for the grid
  datatype: 'json',
  datafields: [
    // define columns and types
  ],
  updaterow: function(rowid, datarow, commit) {
    editedRows[rowid] = datarow;
    commit(true);
  }
}

var saveData = function() {
  // post editedRows, clear editedRows on success
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24634285

复制
相关文章
如何通过jQuery发送AJAX?
contentType:发生请求时的内容编码类型(application/x-www-form-urlencoded)
切图仔
2022/09/08
1.2K0
Vue通过axios发送ajax请求
在Vue中是不支持发送ajax请求的,如果我们要在Vue中发送ajax请求,我们需借助第三方插件 常用发送ajax请求插件有两个 vue-resource和axios,Vue.js 2.0 版本推荐使用 axios 来完成 ajax 请求。
切图仔
2022/09/08
9610
Vue通过axios发送ajax请求
Vue通过axios发送ajax请求
在Vue中是不支持发送ajax请求的,如果我们要在Vue中发送ajax请求,我们需借助第三方插件 常用发送ajax请求插件有两个 vue-resource和axios,Vue.js 2.0 版本推荐使用 axios 来完成 ajax 请求。
切图仔
2022/09/08
8840
Vue通过axios发送ajax请求
ASP.NET Core通过jQuery Ajax发送AntiForgeryToken
在ASP.NET Core中,如我我们希望用jQuery Ajax向服务器提交数据,并希望使用ValidateAntiForgeryToken标记,我们需要一些技巧。官方文档并没有说如何使用jQuery完成这个操作,我来演示给大家看看。
Edi Wang
2019/07/08
1.6K0
AJAX发送POST请求
AJAX(Asynchronous JavaScript and XML)是一种用于在 Web 应用程序中进行异步数据交换的技术。在 AJAX 请求中,我们可以使用 POST 方法发送数据到服务器,以便进行处理和保存。
堕落飞鸟
2023/05/18
4.1K0
jQuery发送AJAX请求
使用jQuery发送AJAX请求需要使用$.ajax()方法。它是jQuery提供的最基本的AJAX方法,可以根据需要配置各种选项。
堕落飞鸟
2023/05/19
1K0
Axios发送AJAX请求
在这个示例中,我们使用axios.get()方法发送一个GET请求到指定的URL。然后,使用.then()方法来处理成功的响应,并使用.catch()方法来处理请求错误。在成功的情况下,我们可以通过response.data来访问返回的数据,在错误的情况下,我们可以通过error来获取错误信息。
堕落飞鸟
2023/05/19
1K0
React---发送Ajax请求
const {a} = obj; //传统解构赋值
半指温柔乐
2021/04/25
2K0
【Ajax】如何通过axios发起Ajax请求
✍️ 作者简介: 前端新手学习中。 💂 作者主页: 作者主页查看更多前端教学 🎓 专栏分享:css重难点教学 Node.js教学 从头开始学习 ajax学习 文章目录 axios   什么是axios   axios发起GET请求   axios发起POST请求   直接使用axios发起get请求   直接使用axios发起post请求 axios   什么是axios Axios是专注于网络数据请求的库,相比于原生的XMLHttpRequest对象,axios简单易用。相比于
坚毅的小解同志的前端社区
2022/11/28
1.7K0
【Ajax】如何通过axios发起Ajax请求
前端基础-Ajax发送POST请求
第5章 Ajax发送POST请求 5.1 post请求 复制第3章案例代码,将 get 请求修改为 post 请求; //请求地址 var url = 'baidu'; //open参数为post xhr.open('post',url); //设置请求头 *** xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded'); //设置post请求参数值 xhr.send('names='+inp.value); 5.2 无
cwl_java
2020/03/26
3K0
AJAX请求重复发送问题
在进行 AJAX(Asynchronous JavaScript and XML)请求时,我们有时会遇到请求重复发送的问题。这可能会导致不必要的请求重复执行,增加服务器负载和网络带宽消耗,并且可能对应用程序的性能和用户体验产生不良影响。
堕落飞鸟
2023/05/18
1.2K0
前端基础-Ajax对象
通过上一节我们发现,想要使用 ajax 的一系列功能,我们就必须先得到 ajax 对象
cwl_java
2020/03/26
7870
防止重复发送Ajax请求问题
在工作中有很多场景需要通过Ajax请求发送数据,像是注册、登录、提交用户反馈等。用户在点击了“确认”按钮之后有可能一段时间内没有收到反馈页面无任何反应,然后就接着连续多次点击“确认”按钮导致发送n个重复的请求,给服务器造成不小压力。
前端开发博客
2020/11/04
1.8K0
创建发送异步通讯对象Ajax请求、数据回调及属性状态说明
AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
德顺
2019/11/12
1.9K0
如何防止重复发送ajax请求
作为一个成熟的ajax应用,它应该能自己在pending过程中选择请求拦截和请求取消
coder_koala
2020/09/08
2.5K0
如何防止重复发送ajax请求
Themeleaf通过ajax局部更新
需求:通过改变id,从数据库中回显不同的信息 前端: <div class="row"> <div class="col-sm-6"> <div class="form-group"> <label class="col-sm-4 control-label">单号:</label> <div class="col-sm-8"> //onchange:修改option改变触发函数 <select id="tes
Zero_xxl
2020/08/06
1.2K0
django 通过ajax完成登录
一、 在users/views.py中加代码: from django.http import HttpResponse class LoginView(View): """用户登录""" def get(self,request): return render(request,'index.html',{}) def post(self,request): user_name=request.POST.get("username","")
玩蛇的胖纸
2018/06/08
2.2K0
响应json数据之发送ajax的请求
一、前端异步请求代码: <span style="font-size:14px;">$.ajax ({ type: "POST", //请求的方式 url: "outputservlet3", //请求url data: {}, //前端向后端传送的数据 dataType: "json", //数据格式json error: function () //请求错误的回调函数 { }, success: function () //请求成功的回调函数 { } })</span> 二、WEB-INF下的w
阮键
2019/12/25
4.7K0
Ajax轮询定时的通过Ajax查询服务端
客户端按规定时间定时向服务端发送ajax请求,服务器接到请求后马上返回响应信息并关闭连接。
挨踢小子部落阁
2019/07/02
2.3K0
AJAX - 向服务器发送请求请求
如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:
chenchenchen
2022/11/29
1.8K0

相似问题

通过ajax对象对象发送json

15

通过ajax发送json对象

12

通过$.ajax发送javascript对象

24

通过javascript AJAX发送Java对象

22

JQuery对象通过ajax发送邮件()

311
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文