我将向您展示两个片段。

这工作正常:

this.searchBox = new Foo.UI.SearchBox(this.input, {
    autoCompleteSearchComplete: processSearchResults
});


这根本不起作用:

this.searchBox = new Foo.UI.SearchBox(this.input, {
    autoCompleteSearchComplete: function() {
        processSearchResults
    }
});


我需要将该processSearchResults调用放在if语句中,以检查我的搜索文本输入($('.search'))是否在其中写入了任何文本。

我的第一个想法是使用此函数类型表示法,但它不起作用。好像根本没有调用processSearchResults

有什么建议?

最佳答案

那是因为您实际上没有调用该函数。这是正确的:

this.searchBox = new Foo.UI.SearchBox(this.input, {
    autoCompleteSearchComplete: function() {
        if (...) {
            processSearchResults();
        }
    }
});

关于javascript - 使用匿名函数作为javascript对象的一部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16484102/

10-12 16:20