请问如何用jquery生产面向对象的json格式?
$.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() { if (o[this.name]) { if (!o[this.name].push) { o[this.name] = [ o[this.name] ]; } o[this.name].push(this.value || ''); } else { o[this.name] = this.value || ''; } }); return o; }; function onchang() { //var v = $("#form1").serializeObject(); var v = $("#form1").serializeObject(); var sjson = JSON.stringify(v); //alert(sjson); //$("p").append(sjson); $.ajax({ type : "post", //data:{"username":"username","password":"password"}, //data:{"jsonString":'{"username":"username","password":"password"}'}, data : { "jsonString" : sjson }, //data : {test:test,username:userDao5,password:userDao}, //data: sjson, url : "Batch_batchChangAll.action", dataType : "JSON", success : alert("发送成功") }); }
请问jquery如何生成如下格式的json?
{[ {username:"user1", password:"123456", charname:"nickname1"}, {username:"user2", password:"123456", charname:"nickname2"}, {username:"user3", password:"123456", charname:"nickname3"}, ]}
{"username":["1","2"],"password":["1","2"],"charaname":["1","2"]}
form表达代码如下:
<form id="form1"> <table> <tr> <th>编号</th> <th>用户帐号</th> <th>用户密码</th> <th>用户角色</th> </tr> <c:forEach var="allusers" items="${allUsers}" varStatus="status"> <tr> <td><c:out value="${allusers.id}" /></td> <td><input type="text" name="username" value="${allusers.username}" /></td> <td><input type="text" name="password" value="${allusers.password}" /></td> <td><input type="text" name="charaname" value="${allusers.charaname}" /></td> </tr> </c:forEach> </table> </form> <input type="submit" value="确定修改" id="subchang" onclick="onchang()" />
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
引用来自“wuyiw”的评论
首先...{[...]}这个不是正确的json格式吧...
其次...你这样的写法应该会漏掉第一组数据吧...
最后...试试这个...
首先...{[...]}这个不是正确的json格式吧...
其次...你这样的写法应该会漏掉第一组数据吧...
最后...试试这个...
格式不好看
回复
能用就行了, 还要好看?
回复
我想用面向对象的格式,这样后端用fastjson接收比较方便。
jquery 不是有serialize吗?