在自定义函数中使用jQuery时遇到问题。
当我从我的.html开始我的jQuery时:
<script type="text/javascript" src="js/MyJS.js"></script>
MyJS:
$.getJSON('MyFilePath', function(data)
{
var items = [];
$.each(data, function(key, val)
{
//Doing things with my data.
});
});
它工作正常并返回我的文件。 (我使用的是带有json结构的纯文本文件)。
但是当我试图从一个函数启动它时,例如:
function getAllDepts()
{
$.getJSON('MyFilePath', function(data)
{
var items = [];
$.each(data, function(key, val)
{
//Doing things with my data.
});
});
}
它不起作用。看起来他无法加载我的文件,但我只是不明白为什么。
使用:
$.ajax({
url: "MyFilePath",
success: function(data){
console.log(data);
},
error: function(data){
alert(error);
}
});
我仍然可以获取我的数据,但我只是想知道为什么getJSON不起作用。 我读到getJSON有加载本地文件的问题,但我不确定它是否适用于我的问题。
有什么想法吗?
@comments:
答案 0 :(得分:1)
你的功能看起来不对尝试
function getAllDepts() {
$.getJSON('MyFilePath', function(data) {
var items = [];
$.each(data, function(key, val) {
//Doing things with my data.
});
});
}
答案 1 :(得分:0)
尝试以下方法。这可能与$ .getJSON的异步性质有关。
(document).ready(function() {
function getAllDepts()
{
$.getJSON('MyFilePath', function(data)
{
var items = [];
$.each(data, function(key, val)
{
//Doing things with my data.
});
});
}
}