/ / jQuery - добавяне на динамични данни към обвързващо събитие - jquery, събития

jQuery - добавяне на динамични данни към събиране на събитие - jquery, събития

Имам задължително събитие, което изглежда така:

$("#form").on("submit", { callback : Obj.method }, FunctionName);

Обвързването се изпълнява при зареждане на страницата, но при товавреме Obj.method не е дефиниран - мислех, че използва каквото и да е текущата стойност на Obj.method, но очевидно използва каквато и да е стойност в момента, в който работи.

Има ли начин да се определят данните в момента, в който се задейства манипулаторът на събитието? Предполагам, че в този момент няма ... но хората тук изглежда знаят много повече, отколкото аз.

Отговори:

2 за отговор № 1

Просто увийте обратно извикване с функция и той няма да бъде стартиран, докато се извика обратно извикване.

$("#form").on("submit", {
callback : function() {
Obj.method();
}
}, FunctionName);

1 за отговор № 2

Ако е променлива, която съществува в момента, в който обработващият събития се задейства и искате да бъде оценен тогава, можете просто да го направите директно от функцията на манипулатора:

$("#form").on("submit", function(e) {
FunctionName(Obj.method);
});

или, ако искате да се обадите директно:

$("#form").on("submit", function(e) {
Obj.method();
});