如何加载动态的JSON数组?(How to load a JSON array which is dynamic?)
为什么这个JSON不起作用? 我试图循环所有的库数组大项目。 我将来可能会将它们附加到表或其他内容中,但我甚至无法控制它。记录值。 我尝试过使用键值,但没有运气! 最重要的是下面的画廊JSON具有204473,204474这样的值这些是动态的,所以我需要将它们视为关键我认为?
function changeImages(data){ // JSON var data = data; // Loop through all the JSON for (var key in data) { if (data.hasOwnProperty(key)) { // Get the gallery array var value = data[key]["gallery"]; for (var keyI in value){ // Get the keys console.log(value[keyI].large); } } } } function onPageLoad(){ var strProductId = id; // POST MAGENTO MAGE API CALL jQuery.ajax({ type: "POST", url: "/swatches/ajax/media", data: "product_id="+strProductId, success: function(data){ changeImages(data) } }); } onPageLoad(64413);
所以我通过$ .post得到我的JSON,返回正常。 这是示例JSON:
{ "large": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "medium": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "small": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "gallery": { "204472": { "large": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "medium": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "small": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg" }, "204473": { "large": "https:\/\/res-4.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_2.jpg", "medium": "https:\/\/res-4.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_2.jpg", "small": "https:\/\/res-4.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_2.jpg" }, "204474": { "large": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_3.jpg", "medium": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_3.jpg", "small": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_3.jpg" }, "204475": { "large": "https:\/\/res-3.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_4.jpg", "medium": "https:\/\/res-3.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_4.jpg", "small": "https:\/\/res-3.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_4.jpg" }, "204476": { "large": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_5.jpg", "medium": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_5.jpg", "small": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_5.jpg" } } }
Why does this JSON not work? I am trying to loop all the gallery array large items. I may append them in future into a table or something but I cannot even console.log the values. I have tried using key, values but no luck! Most important is the fact the gallery JSON below has values like 204473, 204474 these are dynamic so I need to treat them as a key I think?
function changeImages(data){ // JSON var data = data; // Loop through all the JSON for (var key in data) { if (data.hasOwnProperty(key)) { // Get the gallery array var value = data[key]["gallery"]; for (var keyI in value){ // Get the keys console.log(value[keyI].large); } } } } function onPageLoad(){ var strProductId = id; // POST MAGENTO MAGE API CALL jQuery.ajax({ type: "POST", url: "/swatches/ajax/media", data: "product_id="+strProductId, success: function(data){ changeImages(data) } }); } onPageLoad(64413);
So I get my JSON via $.post which returns fine. This is the sample JSON:
{ "large": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "medium": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "small": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "gallery": { "204472": { "large": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "medium": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg", "small": "https:\/\/res-1.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_1.jpg" }, "204473": { "large": "https:\/\/res-4.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_2.jpg", "medium": "https:\/\/res-4.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_2.jpg", "small": "https:\/\/res-4.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_2.jpg" }, "204474": { "large": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_3.jpg", "medium": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_3.jpg", "small": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_3.jpg" }, "204475": { "large": "https:\/\/res-3.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_4.jpg", "medium": "https:\/\/res-3.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_4.jpg", "small": "https:\/\/res-3.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_4.jpg" }, "204476": { "large": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_5.jpg", "medium": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_5.jpg", "small": "https:\/\/res-5.xxxx.net\/image\/upload\/dpr_auto,f_auto,q_auto,w_auto\/d_coming-soon.jpg\/media\/catalog\/product\/8\/8\/886535528239_5.jpg" } } }
原文:https://stackoverflow.com/questions/38694013
最满意答案
要做你想做的事情,你需要把正确的正则表达式放在
auto-mode-alist
。 以下将做到:(add-to-list 'auto-mode-alist '("\\.php\\'" . php-mode)) (add-to-list 'auto-mode-alist '("/\\(templates\\|views\\)/.*\\.php\\'" . html-mode))
To do what you want you need to put the correct regular expression in
auto-mode-alist
. The following will do:(add-to-list 'auto-mode-alist '("\\.php\\'" . php-mode)) (add-to-list 'auto-mode-alist '("/\\(templates\\|views\\)/.*\\.php\\'" . html-mode))
相关问答
更多-
这是用R基本工具很容易找到的那种东西。 例如:??路径。 无论如何,加载tools包并读取?file_ext 。 This is the sort of thing that easily found with R basic tools. E.g.: ??path. Anyway, load the tools package and read ?file_ext .
-
看看: http : //php.net/manual/en/function.pathinfo.php mixed pathinfo(string $ path [,int $ options = PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME])您链接的问题已经回答了您的问题: 通常,特定路径可以表示目录和文件。 您可以将文件夹/foo.txt/ ,它仍然是一个文件夹。 唯一可能的方法是检查路径末端是否有/或\ (在链接中也会讨论) The question you linked already answers your question: In general, a specific path can represent both a directory and a file. You can name your folder /foo.txt/ ...在Swagger规范中,您可以在路径中定义文件扩展名,如下所示: /return/{pId}.{fileExtension} 并在参数中定义fileExtension。 下面也是有效的(不适合你的情况): /return/pid.{fileExtension} In Swagger specs,You can define the file extensions in the path as below : /return/{pId}.{fileExtension} and define the fi ...要做你想做的事情,你需要把正确的正则表达式放在auto-mode-alist 。 以下将做到: (add-to-list 'auto-mode-alist '("\\.php\\'" . php-mode)) (add-to-list 'auto-mode-alist '("/\\(templates\\|views\\)/.*\\.php\\'" . html-mode)) To do what you want you need to put the correct regular expressio ...检查Path::file_stem方法 。 你可以在那里找到一个例子。 它至少从Rust 1.6起作用。 Check the Path::file_stem method. You can find an example there. It works at least from Rust 1.6.这应该工作: (add-to-list 'auto-mode-alist '("\\.rr" . R-mode)) This should work: (add-to-list 'auto-mode-alist '("\\.rr" . R-mode))~dpnf如果你想要驱动器 〜不管怎么样 ~dpnf if you want the drive ~pnf if not
获取path / filname的路径,但文件没有扩展名(Get the path of path/filname but where the file has no extension)[2021-11-20]
使用lastIndexOf()和substring() System.out.println(fileObj.getPath().substring(0, f.getPath().lastIndexOf("/")); 编辑:刚刚发现getParent()的存在,它将直接给你该文件的目录。 System.out.println(fileObj.getParent()); Use lastIndexOf() and substring() System.out.println(fileObj.getPath ...ProcessStartInfo.FileName通常为您提供程序可执行文件本身的路径,而不是在Windows资源管理器中单击的文件,因此检查您的案例似乎是错误的。 如果你想使用当前的Process获取参数,那么Process.GetCurrentProcess().StartInfo.Arguments应该给你一个包含传递给程序的所有参数的字符串。 如果有多个参数,则需要自己将这些参数解析为单独的值。 但是获得参数的标准,更简单的方法是确保程序的Main()方法具有签名static void Main(s ...相关文章
更多- 动态拼接JSON数组的问题
- form load 的问题
- JSON是什么?
- 怎么递归json嵌套json?
- net.sf.json解析json对象
- 使用Gson解析Json数据
- JSON 数据类型
- Json.Net学习笔记
- Solr: a custom Search RequestHandler
- 让Solr返回JSON数据
最新问答
更多- 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
- 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
- OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
- 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
- codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
- 在计算机拍照在哪里进入
- 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
- No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
- 单页应用程序:页面重新加载(Single Page Application: page reload)
- 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
- System.StackOverflow错误(System.StackOverflow error)
- KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
- 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
- android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
- TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
- 企业安全培训的各项内容
- 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
- C#类名中允许哪些字符?(What characters are allowed in C# class name?)
- NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
- 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
- 将多个行和可变行移动到列(moving multiple and variable rows to columns)
- 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
- 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
- Angular $资源不会改变方法(Angular $resource doesn't change method)
- 在Angular 5中不是一个函数(is not a function in Angular 5)
- 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
- 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
- 常见的python rpc和cli接口(Common python rpc and cli interface)
- Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
- 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)