Tag: json

我可以在不使用AJAX的情况下发布JSON吗?

我有一些数据,让我们说: var dat = JSON.stringify(frm.serializeArray()) 我想使用往返(aka,non ajax)将其提交给服务器。 我知道这是可能的,但我找不到任何关于它的文献。 想法? (我正在使用jQuery,如果这更容易) 编辑:虽然所有这些答案到目前为止回答了这个问题,但我应该包括我想要一个“application / json”的“内容类型”

JQuery:合并多个JSON结果

情况:用户希望使用Youtube的JSON API在JQuery站点中导入Youtube播放列表。 问题: Youtube只返回前50个条目,但播放列表的长度可以超过100个(长度由JSON响应中的’totalItems’给出)。 所有条目都需要合并为1个对象,最后需要将其推送到输出函数中。 条目1-50: http : //gdata.youtube.com/feeds/api/playlists/84780DAC99E1A285? v = 2 &alt = jsonc&max-results = 50&start-index = 1 条目50-100: http : //gdata.youtube.com/feeds/api/playlists/84780DAC99E1A285? v = 2 & alt = jsonc& max- results = 50& start- index = 50 当前代码: function fetchPlaylist(pid) { var the_url = ‘http://gdata.youtube.com/feeds/api/playlists/’ + encodeURIComponent(pid) + ‘?v=2&alt=jsonc&max-results=50’; $.ajax({ type: “GET”, url: the_url, […]

如何清除JSON的缓存

我正在使用jQuery读取JSON文件。 如果我更新.get()读取的文件,当我读取较新的文件时,它仍会获取旧值。 由于我每秒都会写入和读取文件,我该如何解决这个问题呢? 手动清除缓存不是一种选择。 function readEye() { $.getJSON(‘output.json’, function(data){ console.log(data); }); }

如何使用SYNCHRONOUS页面POST从HTML表单发送复杂的JSON对象?

我的服务器正在使用ServiceStack,并希望收到一些这样的数据: { Customer: { Company: “TheCompany”, RegionCode: “AU_NSW” }, Name: { First: “Jimi”, Last: “Hendrix” } } 我有一个包含这些字段的表单,我可以使用JQuery轻松获取数据,创建嵌套的JSON对象并使用$ .post发送它。 但我不想将其作为AJAX发送,因为我希望整个页面都提交,然后浏览器将服务器的响应显示为新页面。 只是经典的forms发布行为。 我已经尝试将复杂的json作为字符串嵌入隐藏的表单字段中 – 没有雪茄。 我还查看了ServiceStack是否有任何命名约定,以便我可以调用我的表单字段“Name [First]”并让ServiceStack将正确的值放在正确的嵌套结构中 – 也就是没有雪茄。 有没有办法可以在表单发送数据之前将JSON对象附加到表单的POST数据? 要么 有没有办法我可以使用jQuery进行整页提交(所以我可以发送一个复杂的嵌套JSON,同时仍然有正常的“页面提交”行为)?

将JSON渲染为HTML

我用下一个代码获取JSON数据: $.getJSON( “data.json”,function foo(result) { $.each(result[1].data.children.slice(0, 10), function (i, post) { $(“#content”).append( ‘ HTML ‘ + post.data.body_html ); } ) } ) 一些字符串包括: < 和> 并且这没有显示为常规html < , >尝试使用.html()而不是.append()不起作用。 这是现场示例http://jsfiddle.net/u6yUN/

多维数组和jQuery的getJSON

我向我的应用程序中的控制器提交了一个getJSON请求,该控制器返回带有2个“应用程序”的有效JSON。 我知道这个事实就好像我将alert语句移动到jQuery的每个函数中它会给我预期的结果。 我试图将这些数据存储在一个多维数组中,以便以后与extJS’菜单控件一起使用。 码: Ext.onReady(function() { var applicationList = []; jQuery.getJSON(‘index.php/applications’, function(data) { jQuery.each(data.applications, function (i, app) { applicationList[i] = []; applicationList[i][‘text’] = app[‘title’]; applicationList[i][‘id’] = app[‘slug’]; }); }); alert(applicationList[0][‘text’]); var applicationMenu = Ext.menu.Menu({ items: applicationList }); }); JSON响应: {“applications”:[{“slug”:”test”,”title”:”Test”},{“slug”:”hardware”,”title”:”Hardware”}]} 预期结果: 测试 实际结果(来自Firebug): applicationList [0]未定义 如果我替换上面的alert() ,使用以下代码我会得到一个警告窗口,其中包含文本“remove”: for (p in applicationList) { alert(p); } 现在,我的想法是JSON请求没有及时完成alert()所以我将使用命名回调函数来确保请求已完成: […]

Select2.js错误:无法读取未定义的属性“长度”

我正在使用Select2 jquery插件,我无法用json获得结果。 在浏览器中查看json响应时看起来没问题。 像这样举例如: [{ “id” : “50”, “family” : “Portulacaceae ” }, { “id” : “76”, “family” : “Styracaceae ” }, { “id” : “137”, “family” : “Dipsacaceae” } ] 在这种情况下使用ajax调用的URL是: http://localhost/webpage/json_family.php?term=acac&_=1417999511783但是我无法在select2输入中得到结果,控制台说: 未捕获的TypeError:无法读取未定义的属性“长度” 这是代码: HTML JS $(“#select2_family”).select2({ minimumInputLength: 3, ajax: { url: “json_family.php”, dataType: ‘json’, data: function (term) { return { term: term, }; […]

如何显示JSON对象的值?

这是我到目前为止所得到的。 请阅读代码中的注释。 它包含我的问题。 var customer; //global variable function getCustomerOption(ddId){ $.getJSON(“http://localhost:8080/WebApps/DDListJASON?dd=”+ddId, function(opts) { $(‘>option’, dd).remove(); // Remove all the previous option of the drop down if(opts){ customer = jQuery.parseJSON(opts); //Attempt to parse the JSON Object. } }); } function getFacilityOption(){ //How do I display the value of “customer” here. If I use alert(customer), I got null […]

jqGridfilter或按日期搜索不工作的客户端

我有一个ASP.NET MVC 3页面。 在它上面,我有一个表,我使用来自ajax调用的JSON数据转换为jqGrid。 网格具有以下设置: myGrid = $(‘#myGrid’); myGrid.jqGrid({ caption: ‘My Grid’, datatype: ‘local’, data: data.rows, height: 250, pager: ‘#myPager’, viewrecords: true, colModel: [ …, { label: ‘blah’, name: ‘blah’, align: ‘left’, sortable: true, editable: false, width: 85, formatter: ‘date’, sorttype: ‘date’, datefmt: ‘m/d/Y’, formatoptions: { srcformat: ‘m/d/Y’, newformat: ‘m/d/Y’ } }, … ] }); […]

如何在Ajax中发送js数组

我创建了一个像这样的JS数组var detailsArr = new Array(); 并将一些数据推入此数组。 现在我通过Ajax将这个数组推送到我的Spring Controller中 $.ajax({ type: “POST”, url: “submit”, data: ({detailsArr : detailsArr }), success: function(html){ alert( “Submitted”); } }); 在Spring Controller端,我通过@RequestBody注释接收这个数组。 Spring Controller方法签名如下所示 public String submit(@RequestBody String body) 但是在Spring Controller端收到的数组基本上是这种格式的String detailsArr[]=add&detailsArr[]=test1&detailsArr[]=test2&detailsArr[]=test3 我必须手动拆分此String以获取值,这是一个繁琐的过程。 有没有什么方法可以让我可以得到数组,所以我只需要迭代它来获取值。