Javascript 如何使用回调编写jQuery函数?
我有以下功能:Javascript 如何使用回调编写jQuery函数?,javascript,jquery,jquery-plugins,Javascript,Jquery,Jquery Plugins,我有以下功能: function loadProjects(pID) { $.ajax({ url: myURL, success: function (dataJS) {XXXXXXXXXXXXXXXX} }); } 我把这个函数叫做loadProjects(1) 问题是我希望能够在成功后定义回调函数,并且我希望在执行LoadProject时包含它(1,回调:{这里包含的任何js在成功后都会被回调}) 如何让函数接受回调? 如何将回调传递给该
function loadProjects(pID) {
$.ajax({
url: myURL,
success: function (dataJS) {XXXXXXXXXXXXXXXX}
});
}
我把这个函数叫做loadProjects(1)
问题是我希望能够在成功后定义回调函数,并且我希望在执行LoadProject时包含它(1,回调:{这里包含的任何js在成功后都会被回调})
如何让函数接受回调?
如何将回调传递给该函数
谢谢以下是如何修改函数以使其能够接受回调
function loadProjects(pID, callback) {
$.ajax({
url: myURL,
success: function (dataJS) {
if ($.isFunction(callback)) {
callback.call();
}
}
});
}
下面是您将如何使用它
function myCoolCallback() {
alert("I am cool");
}
loadProjects(123, myCoolCallback);
或者,您可以将其与这样的匿名函数一起使用
loadProjects(123, function() {
alert("I am cool");
});
调用如下内容:
loadProjects(111, function() { alert('hello!'); });
用法:
loadProjects(pID, function(dataJS)
{
// do stuff with your dataJS, bear in mind you can call the parameter any name.
});
您可以将一个函数传递给另一个函数,就像它是任何其他对象一样。看看这个:
function loadProjects(pId, callback) {
$.ajax({
url: myUrl,
success: function() {
callback.call(); // <-- invokes your callback with no args
}
}
函数加载项目(pId、回调){
$.ajax({
url:myUrl,
成功:函数(){
callback.call();//谢谢大家。但我希望callback是我想要的任何东西。我不希望回调是静态的?再次感谢,但所有这些都是静态回调,它不允许我定义callbackfunc(22)之类的东西但是我怎样才能将参数传递给callback呢?+1用于正确猜测他想将参数传递给callback。这个问题应该得到-1,因为措词不当。我爸爸总是告诉我,棘手的部分不是找出解决方案,而是找出问题所在。
loadProjects(pID, function(dataJS)
{
// do stuff with your dataJS, bear in mind you can call the parameter any name.
});
function loadProjects(pID, callback) {
$.ajax({
url: myURL,
success: function (dataJS) {
// your initial method declaration goes here
...
// just call the callback method at the end of the success method
callback();
}
function loadProjects(pId, callback) {
$.ajax({
url: myUrl,
success: function() {
callback.call(); // <-- invokes your callback with no args
}
}