我想知道是否有人可以为我目前遇到的这个问题提供一些帮助。我对此非常陌生,不幸的是,编写Headfirst编程的教科书并没有真正解释这一点。我研究了很多stackoverflows,但无济于事。任何正确方向的帮助将不胜感激。谢谢!
任务是显示食物菜单以及下面的项目列表。
我认为这是正确的获取请求?我知道我错过了一些东西,但老实说,这是我的头脑。
function getStarterMenu() {
$.get(
'data/startersMenu.json',
function (data) {
//Something goes here?
},
'json'
);
}
我有一个名为startersMenu.json的外部json文件
var startersMenu = {
"starters": [
{
"name": "Jumbo Lump Crab Cake",
"description": "Creole lobster sauce."
},
{
"name": "Bacon Wrapped Sea Scallops",
"description": "Chardonnay lemon sauce, Mango salsa."
},
{
"name": "Chilled Maine Lobster Cocktail",
"description": "Atomic cocktail sauce and lemon butter."
},
{
"name": "Coconut Shrimp",
"description": "three jumbo tiger shrimp, vanilla orange beurre blanc."
},
{
"name": "Crispy Point Judith Calamari",
"description": "Italian peppers and Bleu cheese Stuffed olives, Atomic cocktail sauce."
},
{
"name": "Oysters on the Half Shell",
"description": "shucked to order, mignonette and Atomic cocktail sauces."
}
]
}
答案 0 :(得分:0)
在ajax调用成功响应之后,您需要编写代码来存储json数据。请注意,您需要在保存到本地存储之前对您获得的json进行字符串化。
pattern <- c("(Deleted) Semasio » DE: Intent » Christmas C",
"(Old) AddThis - UK » Auto » General » Auto Enthusiasts",
"(Old) AddThis - UK » Auto » General » Auto Intenders",
"(Old) AddThis - UK » Financial » Social » Financial Shoppers",
"(Old) AddThis - UK » Food » Social",
"(Old) AddThis - UK » Financial » Social » Financial Shoppers",
"(Old) AddThis - UK » Health » Social » Health Influencers")
pattern <- data.frame(audiance=pattern)
x <- read.csv(text='segment, subsegment
Shopping, Financial shoppers
Travel, Travel Europe
Enthusiasts, Auto Enthusiasts
Shopping, Christmas shopping', stringsAsFactors=FALSE)
vagrep <- Vectorize(agrep, 'pattern', SIMPLIFY = TRUE)
pattern$subsegment <- ''
matches <- vagrep(x$subsegment, pattern$audiance)
invisible(lapply(1:length(matches), function(i) if (length(matches[[i]] > 0)) pattern$subsegment[matches[[i]]] <<- x$subsegment[i]))
pattern
# audiance subsegment
#1 (Deleted) Semasio » DE: Intent » Christmas C
#2 (Old) AddThis - UK » Auto » General » Auto Enthusiasts Auto Enthusiasts
#3 (Old) AddThis - UK » Auto » General » Auto Intenders
#4 (Old) AddThis - UK » Financial » Social » Financial Shoppers Financial shoppers
#5 (Old) AddThis - UK » Food » Social
#6 (Old) AddThis - UK » Financial » Social » Financial Shoppers Financial shoppers
#7 (Old) AddThis - UK » Health » Social » Health Influencers
然后,您可以在每次再次进行ajax调用之前检查本地存储。
SELECT id, label, textual1
FROM table
WHERE ARRAY_CONTAINS(type ,'productType1')
AND ARRAY_CONTAINS(feature ,'feature1')
AND (
( ARRAY_CONTAINS(feature ,'feature2')
AND numeric1 > 3
)
or ( ARRAY_CONTAINS(feature ,'feature3')
AND numeric2 > 4
)
)
ORDER BY label
如果有数据,则从本地存储中获取数据,否则调用服务器获取数据。
答案 1 :(得分:0)
for(var i=0; i<startersMenu.starters.length; i++){
localStorage.setItem('name_'+i, JSON.stringify(startersMenu.starters[i].name));
var nameString = localStorage.getItem("name_"+i);
console.log(nameString);
}
通过这种方式,您可以使用本地存储存储数据并轻松检索..
$.ajax({
url: 'data/startersMenu.json',
data: {
},
cache: false, // you can set cache true or false here
complete: function (jqXHR, textStatus) {
// following statements
}
});
你选择的方法是更好的方法。你可以设置cache true或false来存储缓存..
使用这种方法是帮助你的更好方法..