1、按照描述,题主是想将多条数据记录提交到服务端,同时服务端将数据插入到数据库。那么思路是将多条数据存在数组中,调用post方法的接口传入后端。
2、方法如下:
var sendData = []
sendData.push({name:'david',age:'20'})
sendData.push({name:'peter',age:'23'})
3、传递数据给服务端,一般使用post方法调用接口,使用jquery,代码如下:
$.post("接口路径",sendData,function(result){
console.log(result,'发送结果')
})
扩展资料:
1、json与字符串互相转换:
JSON.parse('{"name":"karla"}')//将字符串转换为json
JSON.stringify({name:'karla'})//将json转化为字符串
2、jquery中post与get的区别:
1) $.get() 方法使用GET方法来进行异步请求的。$.post() 方法使用POST方法来 进行异步请求的。
2)get请求会将参数跟在URL后进行传递,而POST请求则是作为HTTP消息的实体 内容发送给Web服务器的,这种传递是对用户不可见的。
3) get方式传输的数据大小不能超过2KB 而POST要大的多。
4)GET 方式请求的数据会被浏览器缓存起来,因此有安全问题。
参考资料:百度百科-json
你数据都是现成的 直接创建一个就好了
你如果要把arrYearPay转为{yearPay:100},{yearPay:200}这样键名都一样的对象,还不如直接post数组到后台,反正没有key可辨识,直接通过数组索引判断就是了
给你粗略写个demo
var code = "A123"var rate = 100
var arrYearPay = [100,200,300]
var data = {
code: code,
rate: rate,
yearPay: arrYearPay
}
var url = './demo.php' //你post地址
$.post(url, data, function (e) {
alert(e)
})
后台php代码
<?php$code= $_POST["code"]
$rate= $_POST["rate"]
$yearPay = $_POST["yearPay"] //这个就是数组对象了
$sum = 0
foreach($yearPay as $year){
$sum += $year * $rate //这个我随便写的啊 改成你自己的公式了
}
echo $sum
?>
使用JSON.stringify 函数,将对象转换为JSON文本。目前,Firefox、Opera、IE8以上版本也提供了本地JSON支持。其中,JSON解释器提供的函数有:JSON.parse、JSON.stringify。
对于那些并不提供本地JSON支持的浏览器可以引入脚本json2.js,来实现JSON转换功能。json2.js脚本可到https://github.com/douglascrockford/JSON-js/blob/master/json2.js页面下载。
函数说明:
JSON.stringify(value[, replacer[, space]])
参数
text
必选项。要转换为JSON文本的对象。
reviver
可选项。该参数是个替换函数。在转换中,遍历的每个节点,都将执行该函数,该函数的返回值将替代转换结果的相应节点值。
space
可选项。格式化输出JSON文本缩进的空格数量。如果不提供该参数将不会格式化输出。
参数reviver的委托类型
reviver(key, value)
reviver函数的中的this是当前所遍历到的节点的父节点。当所遍历的是根节点的时候,父节点是个Object对象,根节点是该对象的一个属性,属性名是空字符串。
参数
key
当父节点是数组Object,key为数组索引,否则key为Object属性名。
value
节点值。
注:JSON不支持循环数据结构。