2012-05-17 5 views
0

У меня есть этот Jquery код:Jquery, доступ к данным из щелчка в функции

$('.viewmap').click(function() { 

    updateMap(); 

}); 

Так что, когда кто-то нажимает на ссылку с классом viewmap он работает функция называется updateMap. В функции updateMap я создаю переменную как так:

var mapid = $(this).attr('title'); 

Переменные выше не работает, он имеет неопределенное значение, мой вопрос в функции viewmap нажмите как получить доступ текущих данных с помощью $ (это) в функции updateMap?

ответ

0

передать ссылку на this функции updateMap

$('.viewmap').click(function() { 
    updateMap(this); 
}); 

function updateMap(obj) { 
    var mapid = $(obj).attr('title'); 
    ... 
} 
0

одной альтернативой является добавление параметра updateMap и вызов updateMap ($ (this)); вместо updateMap();

0

Существует два порекомендовал пути:

//If u don't want to do any work before the updateMap call 
    $('.viewmap').click(updateMap); 

    //If u want do do anything before updateMap call 
    $('.viewmap').click(function(e) { 
     updateMap.apply(this, arguments); 
    }); 

Оба способа будут проходить это и каждый новый аргумент JQuery добавить в настоящее время и в будущем