如何使用JQuery'发布动态JSON字符串;s get函数
How to post dynamic JSON string using JQuery's get function?
我想要实现的是通过jquery将json字符串作为Get方法传递给服务器。发送回的内容是html类型。我使用函数.get("url",myJson,callback)来实现这一点。
为了制作json字符串,我验证了一些复选框和文本框,以获取它们的内容,并在需要时在json字符串上添加它们的id/值。
我使用了一个数组,我添加了我的值,比如:
var array = new Array();
array.push("att_id:"+value);
然后用它制作json:
var jsonString = "{" + array.join(",") + "}";
但是当我向服务器发出这样的请求时:
$.get(
"localhost/something",
$jsonString,
function(data){
$("#something").html(data);
});
它不起作用,因为它将jsonString作为arraykey和null值传递。所以我正在寻找一种方法来实现这一点。
试试这个(快速修复):
$.get(
"localhost/something",
{theData:array},
function(data){
$("#something").html(data);
}
);
或者,更符合jQuery的精神(因为您真的想传递Javascript键值映射(即对象),而不是预先JSON化的字符串):
var $dataObj = {};
$dataObj["att_id"]=value;
// and then
$.get(
"localhost/something",
$dataObj,
function(data){
$("#something").html(data);
}
);
您只需使用对象文字构建数据:
var data = {foo: "bar", att_id: value};
$.get(
"localhost/something",
data,
function(data){
$("#something").html(data);
});
如下创建json字符串。
var data = {};
//Add as many key/values as you want
data["att_id"] = value;
$.get(
"localhost/something",
data,
function(data){
$("#something").html(data);
}
);
我建议对JSON.stringify使用JSON2 polyfill,并去掉数组。
var data= {};
data["att_id"]=value;
$.get(
"localhost/something",
JSON.stringify(data),
function(result){
$("#something").html(result);
}
);
相关文章:
- 从 json 动态获取数据时出现类型错误
- 如何使用javascript Json动态添加到html表中
- 通过json动态绑定作用域到ng模型
- JSON动态Javascript解析”;未定义”;
- json动态菜单和路由
- 从 json 动态构建 dom 树
- 如何在 Angular JS 中使用 JSON 动态选择单选按钮
- 使用嵌套的JSON动态填充选择选项
- Mootools Request.JSON动态回调
- 通过json动态发送到服务器的表单数据不起作用
- 如何:在谷歌地图上从JSON动态更新标记
- 使用Backbone.Marionette从JSON动态生成站点导航
- 从JSON动态创建对象
- 当按钮按下或设置为true时,从JSON动态创建表单
- 用json动态加载树
- 如何从JSON动态生成HTML中嵌套的复选框列表?
- 当使用JSON动态填充一些字段时,我如何保持一些表单字段完整
- 从JSON动态定义ReactJS路由
- 从Google图表中的JSON动态填充数据
- 填充JSON动态数组