jqueryobjectclickobjectname

jquery: get the object name?


I am trying to retrieve the clicked object name through the code below, but I get [object object] only, how can I get the object name?

<a href="#" class="clickme">click</a>

    $('.clickme').click(function(){
      alert($(this));
      return false;
    });

I would like to get '.clickme' as my object name.

Thanks.

EDIT:

thanks for the help guys. sorry that for not being clear.

I want to get the object name dynamically when I turn this jquery click() into a customised function or a plugin.

so,

<a href="#" class="clickme">click</a>

        $('.clickme').click(function(){
          alert($(this));
          return false;
        });

I would like to get '.clickme' as my object name.

and,

<a href="#" id="clickme">click</a>

        $('#clickme').click(function(){
          alert($(this));
          return false;
        });

I would like to get '#clickme' as my object name.

so you notice sometime I want to get id name but sometime I want to get the class name as the object name.


Solution

  • jQuery does have an internal property selector that can be used to find what you're looking for:

    $('.clickme').selector == '.clickme';
    $('.clickme').find('a').selector == '.clickme a';
    

    However you can't access this within the click(function(e){}) since you have to reselect using this:

    $('.clickme').click(function(e){
      alert($(this).selector); // alerts nothing
    });
    

    However, when you create the click function you can assign that element to a variable and reference it within:

    var $cm = $('.clickme').click(function(e){
      alert($cm.selector); // alerts '.clickme'
    });