我正在使用jquery $ .getJSON来检索城市列表.
一切都很好,但我来自爱沙尼亚,我们正在使用像õ,ü这样的角色.ä,ö.
当我将这样的字母传递给回调函数时,我不断得到空字符串.我试过base64编码(服务器端)-decode(jquery base64插件)字符串(我认为这是一个好主意,只要我可以用PHP压缩页面,所以我不必担心带宽),但是通过这种方式,我最终得到了一些随机的中文符号.
什么是这个问题的最佳解决方法.
谢谢.
在htaccess中是否有办法确保我的json的标题是正确的?
更新:有没有人看到json的这些标题有什么问题?
Date Mon, 26 Jul 2010 08:31:11 GMT
Server Apache/2.2.15 (Unix) mod_ssl/2.2.15 OpenSSL/0.9.7a mod_fcgid/2.3.5 Phusion_Passenger/2.2.15 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635
X-Powered-By PHP/5.2.13
X-Pingback http://brettbarros.com/wordpress/xmlrpc.php
Content-Disposition attachment; filename="json_api.json"
Vary Accept-Encoding
Content-Encoding gzip
Content-Length 719
Keep-Alive timeout=5, max=98
Connection Keep-Alive
Content-Type application/json; charset=UTF-8
Run Code Online (Sandbox Code Playgroud)
具体来说,它在ie8,ffx,chrome中使用jquery的getJSON,但不是ie7或ie6 ......
我想在我的JQuery代码中读取json响应作为名称和值对.这是我从我的java代码返回的示例JSON响应:
String jsonResponse = "{"name1":"value1", "name2:value2"};
Run Code Online (Sandbox Code Playgroud)
在我的JQuery中,如果我写jsonResponse.name1,我将获得价值"value1".这是我的JQuery代码
$.ajax({
type: 'POST',
dataType:'json',
url: 'http://localhost:8080/calculate',
data: request,
success: function(responseData) {
alert(responseData.name1);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
//TODO
}
});
Run Code Online (Sandbox Code Playgroud)
在这里,我想"name1"从jsonResponse中读取而不是在JQuery中进行硬编码.通过响应获取每个名称和值来循环.有什么建议?
我在jQuery中搜索相关主题.但我没有看到任何方法来解决我的问题.
$(document).ready(function(){
$("#inputForm").submit(function(event){
$(":text").each(function() {
var inputText = $(this).val();
var userList = [];
var weblink = 'http://test.com';
// problem is from here.
$.getJSON(weblink, function(data){
alert(weblink); // this statement doesn't show up
$.each(data, function(entryIndex, entry){
userList.push(entry['from_user']);
});
});
alert(userList);
});
});
});
Run Code Online (Sandbox Code Playgroud)
这里有四个问题:
任何人都可以帮我解决这个问题.我在这里待了一天.非常感谢你.
使用jQuery:
$.getJSON('http://gdata.youtube.com/feeds/api/videos/b2-5GSjZvW8?v=2&alt=jsonc', function(meta){alert(meta.data.title);});
Run Code Online (Sandbox Code Playgroud)
Firefox和Chrome都按预期工作,但IE不断触发错误功能(使用时$.ajax)而不是成功.错误状态为"0",这没有多大帮助.
我已经使用也试图$.ajax与cache:false无济于事.
有任何想法吗?
我真的已经搜索了近2个小时,还没有找到一个关于如何将JSON数据从PHP传递到JS的好例子.我在PHP中有一个JSON编码脚本,它回显了一个看起来或多或少像这样的JSON脚本(伪代码).
{
"1": [
{"id":"2","type":"1","description":"Foo","options:[
{"opt_id":"1","opt_desc":"Bar"},
{"opt_id":"2","opt_desc":"Lorem"}],
{"id":"3","type":"3","description":"Ipsum","options:[
...
"6":
{"id":"14","type":"1","description":"Test","options:[
...
etc
Run Code Online (Sandbox Code Playgroud)
问题是,如何使用JavaScript获取此数据?我的目标是创建一个基于这些JSON数据生成轮询的.js脚本,但我诚实地对上帝找不到任何关于如何执行此操作的示例.猜测它是这样的:
Obj jsonData = new Object();
jsonData = $.getJson('url',data,function()){
enter code here
}
Run Code Online (Sandbox Code Playgroud)
任何好的例子或类似的任何链接将受到高度赞赏.我认为用PHP编码数据是棘手的部分......
编辑:
我得到了这段代码片段,所以我可以在JS中查看我的整个JSON数据.但现在我似乎无法弄清楚如何获取内部数据.它会打印出阶段编号(1-6),但我无法弄清楚如何获取问题数据,然后再解决每个问题中的选项数据.我是否必须尝试嵌套的每个循环?
$(document).ready(function()
{
$('#show-results').click(function()
{
$.post('JSAAN.php', function(data)
{
var pushedData = jQuery.parseJSON(data);
$.each(pushedData, function(i, serverData)
{
alert(i);
})
})
})
});
Run Code Online (Sandbox Code Playgroud)
这里的想法是进入中间级别的问题信息并打印出问题描述,然后根据问题类型 - 循环选项(如果有的话)创建复选框/ radiobutton组,然后再继续下一个问题.第一个数字代表我目前正在进行的多阶段民意调查的哪个阶段.我的计划是通过隐藏/显示各种div来将其划分为6个阶段,直到通过Ajax提交表单的最后一页.
我想将以下JSON数据发送到服务器并在android中读取响应.以下是Json数据.
{
"class": "OrderItemListDto",
"orderItemList": [
{
"class": "OrderItemDto",
"orderId": 24,
"itemId": 1,
"quantity": 2,
"status": "NEW",
"sRequest": "none"
},
{
"class": "OrderItemDto",
"orderId": 24,
"itemId": 2,
"quantity": 2,
"status": "NEW",
"sRequest": "none"
}
]
}
Run Code Online (Sandbox Code Playgroud)
这里可能会增加数据.
我正在使用CoffeeScript来执行getJSON请求:
$.getJSON(
"http://maps.googleapis.com/maps/api/distancematrix/json?callback=?"
origins: origin
destinations: destinations
sensor: false
success: (data) ->
console.log data
error: (data) ->
console.log data
'json'
)
Run Code Online (Sandbox Code Playgroud)
网址是:
http://maps.googleapis.com/maps/api/distancematrix/json?callback=?&origins=-25.8350643,28.1636066&destinations=-25.551836,%2028.423075|-25.218503,%2027.923075|&sensor=false
Run Code Online (Sandbox Code Playgroud)
如果你把它放在你的浏览器中,它将返回JSON,但是ajax请求告诉我:
Uncaught SyntaxError: Unexpected token:
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我有一个使用MVC4的项目,我想问一下如何从webapi获取数据并返回视图.
模型
public class Name
{
public Int32 NameId { get; set; }
public String FirstName{ get; set; }
public String LastName{ get; set; }
public String CreatedBy { get; set; }
}
public class IListMyProject
{
public List<Name> Names { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我可以Index.cshtml使用此代码列出所有内容
public ActionResult Index()
{
string securityToken = repo.GetTokens();
if (securityToken != null)
{
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpRequestMessage httpRequestMessage = new HttpRequestMessage(HttpMethod.Get, "webapiurl/api/Name/Get?$orderby=LastName&$top=10");
string authHeader = System.Net.HttpRequestHeader.Authorization.ToString();
httpRequestMessage.Headers.Add(authHeader, string.Format("JWT …Run Code Online (Sandbox Code Playgroud) 我是javascript,angularJS和JQuery的新手,但我刚刚开始编写一个angularJS应用程序,我使用JQuery从这样的网络服务器获取JSON:
var obj = $.getJSON( "http://something.com/lol?query="+ $scope.searchString, function() {
$scope.items = obj.responseJSON.entries;
}
Run Code Online (Sandbox Code Playgroud)
在angularJS中有一个等于$ .getJSON的方法吗?这样我就不必导入JQuery库了.
提前谢谢,新手.
到目前为止这是我的解决方案:
function InstantSearchController($scope, $http){
$scope.search = function() {
$http.jsonp("http://something.com/lol?query="+ $scope.searchString + "?json_callback=JSON_CALLBACK").success(
function(data, status) {
console.log(data);
}
);
}
Run Code Online (Sandbox Code Playgroud)
但我收到错误信息:
未捕获的SyntaxError:意外的令牌:
为什么是这样?我究竟做错了什么?}
getjson ×10
jquery ×6
json ×5
javascript ×2
ajax ×1
android ×1
angularjs ×1
base64 ×1
client ×1
coffeescript ×1
gdata ×1
header ×1
syntax-error ×1
unicode ×1