[英]How can I pass a function reference with multiple arguments to the callback of my jQuery(document).on('click' event?
我有以下代碼定義
$(document).on('click', firstRow, processEvent(firstRow, rowArray));
使用以下參數。 就目前情況而言,我正在傳遞函數processEvent
而不是傳遞給變量中存儲的函數定義,因此該函數將立即被調用。
我希望動態設置點擊處理程序,並且要使我的功能正常運行,我需要能夠將兩個參數傳遞給click事件的回調。 第一個是對單擊附加到的DOM元素的引用,第二個是DOM元素標識符(存儲為字符串)的數組。
如何將帶有多個參數的函數引用傳遞給jQuery(document).on('click'事件的回調?
var firstRow = '.first-row';
var secondRow = '.second-row';
var thirdRow = '.third-row';
var rowArray = [firstRow, secondRow, thirdRow];
var hideRow = function(input){
var Input = input;
$(Input).show();
};
var showRow = function(input){
var Input = input;
$(Input).hide();
}
// alert(rowArray);
//Hide second and third rows
$('.second-row, .third-row').hide();
var processEvent = function(e, fooArray){ // currently set to one
var E = e; // Cache ID of calling object
var a = fooArray;
// alert(E);
// alert(a);
var arrayLength = a.length;
for (var i = 0; i < arrayLength; i++) {
foo = a[i];
// alert(row); //
alert(foo);
if (foo = e){
showRow(e);
}
else {
hideRow(foo);
}
}
} // function testProcessEvent(){ processEvent(); }
$(document).on('click', firstRow, processEvent(firstRow, rowArray));
這是我的第一次嘗試$(document).on('click',firstRow,someFunction(firstRow));
采用
$(document).on('click', firstRow, function () {
//place the code here
processEvent(firstRow, rowArray);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.