当提交表单时,我调用一个函数getPosts并传递一个变量str。我想要做的是获取从该函数返回的数据。从函数返回的访问数组 - javascript/jquery noob moment
// when the form is submitted
$('form#getSome').submit(function(){
var str = $("form#getSome").serialize();
var something = getPosts(str);
* This is where I'd like to get the data returned from getPosts()
return false;
});
// get the data
function getPosts(str){
$.getJSON('http://myurl.com/json?'+str+'&callback=?',
function(data) {
arrPosts = new Array();
$.each(data.posts, function(i,posts){
// build array here
});
return arrPosts;
});
};
我试过很多东西,但只得到“未定义”返回。我试过console.log(某事); console.log(getPosts)。
我在这里错过了一些非常基本的东西。任何帮助将不胜感激。
编辑:
我试图做的是建立一个单一的功能会得到职位。然后不同的事件会调用该函数。然后我可以使用这些数据。所以一个事件可能会提交一个表单,另一个可能会点击一个链接,另一个懒惰/无尽的滚动。所有人都可以使用相同的getPosts功能。
有很多解析结果,这相当于很多代码行。只是试图找到一种方法来重用该功能。你认为那可能吗?
$('a.thisLink').click(function(){
getPosts();
get the return from getPosts() and do something with it
});
$('form.thisForm').submit(function(){
getPosts();
get the return from getPosts() and do something with it
});
function getPosts(){
get the posts and return an array
}
我认为这是正确的轨道。我想要做的是创建一个可以获取帖子的函数。然后不同的事件会获得帖子。所以一个事件可能会提交一个表单,另一个可能会点击一个链接,另一个懒惰的滚动。所有人都可以使用相同的getPosts功能。有很多解析结果,这相当于很多代码行。只是试图找到一种重用方法。你认为那可能吗? – jyoseph 2009-08-12 04:24:54
是的,这正是我正在寻找的,这样我可以不断重复使用reusableCallback函数。 最后一个问题,我如何引用在submit函数中返回的数据(来自reusableCallback函数)? – jyoseph 2009-08-12 05:00:14
@jyoseph:看看我的第二个编辑... – CMS 2009-08-12 05:39:14