2013-02-13 124 views
1

之后的参数调用函数我认为这对于jquery专业人员来说非常简单。

我做了一个全局函数。它被更改事件调用。但它也应该在$(document)之后调用一次.ready

无参数函数的简单故事。

$(document).ready(function() { 

function_to_call_after_ready(); 

}) 

但是我有一个参数来调用它,就像这样:

({param1: "1"}, function_to_call_after_read) 

试了组合,但我不能弄明白。

原来这里是通过改变事件被称为:

$("#Verbrauch_Typ").change({param1: "#Verbrauch_Einheit", param2: "#Verbrauch_Typ"}, einheiten_filtern); 

作品!

einheiten_filtern({param1: "#Verbrauch_Einheit", param2: "#Verbrauch_Typ"}); 

不会“禁用”整个脚本。此外,变更电话不再工作。

+7

我敢肯定,你试过'function_to_call_after_ready({PARAM: “1”})'' – techfoobar 2013-02-13 14:56:25

+0

function_to_call_after_read({ param1:“1”})'? – 2013-02-13 14:56:49

+0

并且'function_to_call_after_ready(“1”)' – Archer 2013-02-13 14:56:57

回答

0

$(document).ready()或您给它的功能没有什么特别之处。只需使用普通的方法调用即可。

$(document).ready(function() { 
    function_to_call_after_ready("1"); 
}); 
0

我还不能肯定你问做什么,但如果你想调用一个函数的参数个数可变使用.apply

function_to_call.apply(window, arrayOfArguments); 

如果你想改变this在功能的情况下,使用.call.apply

function_to_call.apply(jQuery, arrayOfArguments); 

.call的工作相同,但需要单独的参数而不是所有参数的数组。

如果你想绑定这样一个功能,而不是立即调用它,如果有使用.bind,或者jQuery的$.proxy

$(document).ready(function_to_call.bind(jQuery, arg1, arg2)); 

无论.bind也不$.proxy采取的参数作为一个数组参数。他们都有不同数量的论据。

1

看起来好像einheiten_filtern()是一个事件处理程序,它从收到的事件对象收集附加数据。

您可以使用on()绑定到ready事件,同时提供额外的数据:

$(document).on("ready", { 
    param1: "#Verbrauch_Einheit", 
    param2: "#Verbrauch_Typ" 
}, einheiten_filtern); 
相关问题