我有一个返回值的函数,我在点击事件后执行了该函数,例如
$("some_div").click( my_function());
答案是如何获取函数的返回值。
我无法使用
var something = $("some_div").click( my_function());
感谢每一位提出问题的人。我得到了答案。
答案 0 :(得分:4)
您必须将功能传递给click
,而不是返回值。在事件处理程序中,您可以调用函数并根据需要处理返回值:
$("some_div").click(function() {
var result = my_function();
// do whatever you want with `result`
});
事件处理程序不会立即调用,但会在稍后(单击该元素时)调用。因此,.click
返回值是没有意义的。
答案 1 :(得分:1)
您可以声明一个全局变量并将结果写入其中。以下是将当前事件写入global:
的示例var global = ''
$("#some_div").click(function(e){
global = e;
});
答案 2 :(得分:0)
你无法获得一个返回值,你只需要点击一个callback
函数,点击“some_div”时会触发该函数。
如果您想使用callback
函数中的某些值,请在函数内使用它或将其保存在hidden input
$("some_div").click(function() {
var someValue = foo();
$('#hiddenInputName').val(someValue);
});
//later on...
var extractedValue = $('#hiddenInputName').val();