JavaScript 函数传递?

标签 javascript jquery jquery-ui jquery-events

我不确定这是否可行,但我希望能够(直接)将 jQuery UI 事件设置为函数,而不是继续包装额外的 function(event, ui) { ... } 包装器。

希望您能从下面的示例中看出我要做什么。

这是我想要的:

$("#auto").autocomplete({
    source: "somepage.php",
    select: dropdownSelect,
    minLength: 0
});

现在我认为上面的方法可行,因为我只是想说“继续触发此事件,刚好转到那个函数”。 不幸的是,那是行不通的,我将以这样的方式结束:(并且出于某种原因,与所有数据断开连接)

$("#auto").autocomplete({
    source: "somepage.php",
    select: function(event, ui) { dropdownSelect(event, ui) },
    minLength: 0
});

最佳答案

以下两个例子在理论上都应该有效:

var dropdownSelect = function(event, ui) {  
    // Code to select drop down
};

$("#auto").autocomplete({
    source: "somepage.php",
    select: dropdownSelect,
    minLength: 0
});

还有这个:

function dropdownSelect(event, ui) {  
    // Code to select drop down
};

$("#auto").autocomplete({
    source: "somepage.php",
    select: function(event, ui) { dropdownSelect(event, ui) },
    minLength: 0
});

JavaScript 函数是一等公民,这意味着您可以像对待任何其他对象一样对待它们。

关于JavaScript 函数传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2900027/

相关文章:

javascript - Javascript 上的正确 CSS 代码

javascript - JQuery 对象 promise 的目的是什么?

javascript - 页面加载前白色闪烁

javascript - 取消选中 Bootstrap 单选按钮

JQUERY UI Accordion 在窗口调整大小时调整大小?

javascript - 绑定(bind)到子项的数据不会用新数据更新

javascript - 使用 javascript/jquery 删除表格行

javascript - jquery .focus(func) 多次执行过程

jquery - 从 jquery ui datepicker maxDate 选项获取日期对象

.net - 从代码后面强制回发?或者从异步回发重新加载 JavaScript?