原来这是一个Firebug bug的人工制品.Ajax请求被取消,但Firebug继续将其报告为活动状态.细节在这里.
我一直在运行XMLHttpRequests,我需要能够在某些情况下中止它们.
我以正常方式设置请求:
ajax = $.getJSON(url + "?updates", function(data) { ...; });
Run Code Online (Sandbox Code Playgroud)
后来我想中止这个请求,看起来很简单:
ajax.abort();
Run Code Online (Sandbox Code Playgroud)
然而,当我看着Firebug时,我发现它仍在运行......
我在尝试中止它之前就调试了ajax的值.它确认它的值是和XMLHttpRequest(readyState为0).
对abh()在XMLHttpRequest上的触发方式和时间有限制吗?
我正在使用jQuery的getJSON调用来检索JSON.
我的问题是返回的JSON中的一些字段中有空格.
如何在不更改源数据的情况下从JSON检索这些值?请参阅下面标有"错误"的行:
$.getJSON(url, null, function(objData) {
$.each(objData.data, function(i, item) {
var zip = item.Zip;
var fname = item.First Name; //ERROR
});
});
Run Code Online (Sandbox Code Playgroud)
示例JSON:
jsonp123456789({"data":[{"Zip":"12345","First Name":"Bob"},{"Zip":"23456","First Name":"Joe"},{"Zip":"34567","First Name":"Bill"}]})
Run Code Online (Sandbox Code Playgroud)
谢谢
如何使用jQuery上的getJSON方法在ASP.NET Web窗体页面上调用方法?
目标是这样的:
我不想使用UpdatePanel,我已经使用ASP.NET MVC框架完成了数百次,但无法使用Web窗体来解决这个问题!
到目前为止,我可以做任何事情,包括调用服务器,它只是没有调用正确的方法.
谢谢,
Kieron
一些代码:
jQuery(document).ready(function() {
jQuery("#<%= AreaListBox.ClientID %>").click(function() {
updateRegions(jQuery(this).val());
});
});
function updateRegions(areaId) {
jQuery.getJSON('/Locations.aspx/GetRegions',
{ areaId: areaId },
function (data, textStatus) {
debugger;
});
}
Run Code Online (Sandbox Code Playgroud) 我有大量的数据要排序和查询,我不能依赖互联网连接.理想情况下,我想将我的整个数据集存储为JSON对象(目前大约17MB,但可能会大得多)并使用类似jLinq或SQLike来查询它,而不是必须输出大量较小的文件.
我有兴趣使用JavaScript(特别是jQuery)查找外部getJSON调用的最大推荐文件大小.1MB,20MB,100MB?关于这个问题的信息很少.有关查询大型数据集客户端的信息很少见.
任何有关该主题的信息将不胜感激.
看起来人们过去曾遇到过Accept标题的问题,但我不确定我的问题是否相关.使用jQuery 1.4.2,我在使用JSON时遇到了麻烦getJSON().我可以在Firebug中观察请求/响应,看起来问题的根源是有问题的资源根据Accept标头返回不同的结果.即使文档说它应该设置,在Firebug中它显示为" / " - 显然,我想要"application/json".这是一个已知的错误?我应该设置一些我不知道的旗帜吗?
ETA:请求是跨站点的,如果这很重要,但我传递了一个callback=?查询参数,因此JQuery(成功!)将其视为JSONP.我在这个特殊情况下调用的服务支持一个接受覆盖查询参数(&accept=application/json),所以我让它手动工作,但我仍然认为标题搞砸是奇怪的,并希望我能够修复它,所以在处理可能不那么宽容的不同服务时,我不再遇到这种情况.我没有一种简单的方法来复制/粘贴我的开发环境中的代码,但这里是要点:
$.getJSON(baseURL + "?item=" + itemNum + "&callback=?", function(data){
console.log(data);
}
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,这并不是很复杂,并且应该(我99%肯定......)导致XHR与Accept头一起发送application/json.就像我说的那样,根据Firebug的Net控制台,情况并没有发生.如果重要,这是在Firefox 3.6.8中.
再次ETA:对于仍在读这篇文章的人,是的,它仍在发生,不,我不知道为什么.就像我说的,简单的getJSON()调用,真正的基本语法,跨站点,被视为JSONP,因为它包含一个回调查询参数.仍然愿意接受建议!
我一直在尝试向外部服务器发出ajax请求.到目前为止,我已经了解到,由于安全原因,我需要使用getJSON来执行此操作?
现在,我似乎无法对外部页面进行简单的调用.我试图尽可能地简化它,但它仍然无法正常工作.我有2个文件,test.html和test.php
我的test.html这样打电话给localhost进行测试:
$.getJSON("http://localhost/OutVoice/services/test.php", function(json){
alert("JSON Data: " + json);
});
Run Code Online (Sandbox Code Playgroud)
我希望我的test.php返回一个简单的'测试':
$results = "test";
echo json_encode($results);
Run Code Online (Sandbox Code Playgroud)
我可能会犯一些令人难以置信的菜鸟错误,但我似乎无法弄明白.此外,如果这有效,我怎样才能将数据发送到我的test.php页面,就像test.php?id = 15一样?
test.html页面调用localhost上的test.php页面,同一目录我没有收到任何错误,只是没有警告..
如何直接从代码隐藏调用ASP.NET Web API?或者我应该调用从代码隐藏调用getJSON方法的javascript函数?
我通常有类似的东西:
function createFile() {
$.getJSON("api/file/createfile",
function (data) {
$("#Result").append('Success!');
});
}
Run Code Online (Sandbox Code Playgroud)
任何指针赞赏.TIA.
*我正在使用WebForms.
我使用以下代码从JSON中获取数据.
$(document).ready(function()
{
$.getJSON("http://www.example.com/data.php?id=113&out=json", function(data) {
$.each(data.issue.page, function(i,item) {
imagesJSON[i] = item["@attributes"];
});
alert(imagesJSON.length);
});
});
Run Code Online (Sandbox Code Playgroud)
它适用于Mozilla,chrome和其他浏览器,但不适用于IE.(不在任何版本中).
我正在尝试以下方面.主窗体中的客户选择选项.当用户选择主表单中的客户时,他的账单应出现在所有后续部分中.
我正在使用ryan bates的nested_form gem来获取部分内容.代码如下.
<%= simple_nested_form_for @money_receipt do |f| %>
<div class="customers"><%= f.collection_select :customer_id, Customer.all, :id, :name, options ={:prompt => "-Select a Customer"}, :style=>'width:210px;'%></div><br />
/*rest of the code*/
<%= f.link_to_add "Add line items", :money_receipt_line_items %>
Run Code Online (Sandbox Code Playgroud)
在局部内部
<div class="bill">
<%= f.collection_select :customer_bill_id, CustomerBill.all,:id,:id, {:prompt => "Select Customer bill"}, :style => 'width:202px;' %></div><br />
/*rest of the code*/
Run Code Online (Sandbox Code Playgroud)
上面的jQuery代码如下
jQuery(document).ready(function(){
jQuery(".customers select").bind("change", function() {
var data = {
customer_id: jQuery(this).val()
}
jQuery.getJSON(
"/money_receipts/get_bills",
data, function(data){
var result = "",a,x;
var b …Run Code Online (Sandbox Code Playgroud) 这是我从foursquare获得的JSON的一部分.
JSON
tips: {
count: 2,
groups: [
{
type: "others",
name: "Tips from others",
count: 2,
items: [
{
id: "4e53cf1e7d8b8e9188e20f00",
createdAt: 1314115358,
text: "najja?i fitness centar u gradu",
canonicalUrl: "https://foursquare.com/item/4e53cf1e7d8b8e9188e20f00",
likes: {
count: 2,
groups: [
{
type: "others",
count: 2,
items: []
}],
summary: "2 likes"
},
like: false,
logView: true,
todo: {
count: 0
},
user: {
id: "12855147",
firstName: "Damir",
lastName: "P.",
gender: "male",
photo: {
prefix: "https://irs1.4sqi.net/img/user/",
suffix: "/AYJWDN42LMGGD2QE.jpg"
}
}
},
{
id: …Run Code Online (Sandbox Code Playgroud) getjson ×10
jquery ×8
javascript ×5
json ×5
ajax ×2
asp.net ×2
webforms ×2
nested-forms ×1
php ×1