Reputation: 197
So let's say I have a menu from an array (pmmain) that is generated like this:
$("#pm-page-main") .append("<div class=\"main-box\" id=\"m-box"+b+"\"><div class=\"title-box\"><span class=\"reg-wht-bold\">" + pmmain[b] + "</span></div><div class=\"shadow-box\" id=\"s-box"+b+"\">a</div><BR><BR><img src=\"imgs\\" + pmmain[b] + ".png\"></div>").hide().show(0);}
The m-boxes is where im looking at. Is there a way to get the number of the clicked m-box (eg. There's 16 items in the menu and I clicked on the 2nd one, understandably m-box2 is what i clicked.)? What I want to do is to be able to display another series of menu from that.
Which is like:
$(document) .ready(function(){
$("m-box"?????) .one("click", function(){
$('#arrow-enclosure') .append("<div id=\"highlights-box\"><BR><BR><img src=\"imgs\\"+pmmain[????]+"\"><h1 class=\"line-blank\"><span></span></h1><BR><a href=\"pages\\company name\\company name\\PM\\\">STYLE GUIDE</a> <span>|</span> <a href=\"pages\\company name\\company name\\PM\\Sample Output.pdf\">OLD JOBS PDF</a> <span>|</span> <a href=\"pages\\company name\\company name\\PM\\InDesign Package\">INDD PACKAGE</a> </div>);
});
});
The parts where there's a ????? is the thing that I'm not sure if it's possible to do. Any help would be nice. Thanks!
Upvotes: 1
Views: 115
Reputation: 127
There's an easy way to get the value of the item clicked, and that's using $(this)
in the body of the click handler, like this:
$('.main-box').click(function (){
// $(this) will give you the jQuery element of whatever was clicked,
// you can do whatever you like here
console.log($(this).attr('id'));
});
Check out the jsBin made for this question, where a sample menu is generated that you can click and see the results: http://jsbin.com/pisotefeca/edit?js,console,output
I'm open to any questions!
Upvotes: 1