我正在寻找关于JSON应该存储在哪里的“最佳实践”,如果它只是一个字符串数组。它应该存储在HTML页面的脚本块中的变量中吗?是否应将其存储在HTML以外的JavaScript文件中以进行分离?还是应该将其存储在插件本身中?存储将传递给jQuery插件的JSON数据的最佳实践
如果它应该是一个外部js文件,该文件的“最佳实践”命名方案是什么?我知道接受的jQuery插件名称是jquery.plugin.js或jquery.plugin-min.js(用于缩小文件)。
我正在寻找关于JSON应该存储在哪里的“最佳实践”,如果它只是一个字符串数组。它应该存储在HTML页面的脚本块中的变量中吗?是否应将其存储在HTML以外的JavaScript文件中以进行分离?还是应该将其存储在插件本身中?存储将传递给jQuery插件的JSON数据的最佳实践
如果它应该是一个外部js文件,该文件的“最佳实践”命名方案是什么?我知道接受的jQuery插件名称是jquery.plugin.js或jquery.plugin-min.js(用于缩小文件)。
要看,如果你需要的JSON马上可以存储,随时随地把它执行:
<script> var myJsonObj = { ... }; </script>
如果它是一个大量数据,你不需要数据马上,你可以随时对名为“data.json”的文件进行ajax调用。
对于命名插件名称,以及它真的取决于你,但是我相信jquery.pluginname.js是这样做的标准方式。
我会第二个sktrdie为这样的文件添加扩展名.json。我第一次玩JSON时碰到的一个问题是JSON字符串不是有效的JavaScript文件。
例如,如果我把一个文件与此内容:
{
'foos': 'whatever',
'bar': false,
'items': [1,2,3]
}
为<脚本>标签的src,我得到这个错误:
Error: invalid label
Line: 2, Column: 1
Source Code:
'foos': 'whatever',
在过去的我ve实际上隐藏了JSON字符串<divs>或者像这样跨度:
<div id="jsonStorage" style="display:none">
{'foos': 'whatever','bar': false,'items': [1,2,3]}
</div>
我也为此使用了隐藏表单域。
如果它是插件的一部分,即默认配置,我会将它存储在插件文件本身中。如果它是插件的外部配置,则取决于它。它可能是有意义的,将其存储在HTML的变量,即
<script>
var myConfig = {
"foo" : "bar"
};
</script>
这可能尤其是如果您需要任何的JSON的通过您的后端代码生成。
真的,答案是“它取决于” - 你能给出更多的细节吗?
因此,如果我将它命名为data.json,我假设我只是使用getJSON来获取文件? – 2009-02-05 22:10:16
$ .getJSON使用“脚本”标记hack来获取数据,我认为这些数据只能用于“跨域”请求。一个简单的$ .ajax就足够了。 – 2009-02-05 22:18:54