Improve company productivity with a Business Account.Sign Up

x
?
Solved

jQuery: Closest parent with attribute defined

Posted on 2012-03-11
5
Medium Priority
?
2,538 Views
Last Modified: 2012-03-12
Using jQuery, how can I find the closest parent with the "dir" attribute defined?

<html>
<head>
<title>Hello</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript">

$(document).ready(function() {
  alert('The closest parent with the attribute dir defined has the dir value of ????');
});
</script>

</head>
<body>

<div>
 <div>
  <div dir="ltr">
   <div>
    <div>
     <div>
      <div>
       <p id="xyz"></p>
      </div>
     </div>
    </div>
   </div>
  </div>
 </div>
</div>

</body>
</html>

Open in new window

0
Comment
Question by:hankknight
  • 3
  • 2
5 Comments
 
LVL 83

Expert Comment

by:leakim971
ID: 37708088
The first one in the body :
$("div[dir]", "body").attr("dir");

Open in new window

0
 
LVL 16

Author Comment

by:hankknight
ID: 37708213
I want the closets parent, not the first one in the body.

In the example below, it should find "ltr" not "rtl".

<html>
<head>
<title>Hello</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript">

$(document).ready(function() {
  alert('The closest parent with the attribute dir defined has the dir value of ' + $("div[dir]", "body").attr("dir") );
});
</script>

</head>
<body>

<div>
 <div dir="rtl">
  <div>
   <div dir="ltr">
    <div>
     <div>
      <div>
       <p id="xyz"></p>
      </div>
     </div>
    </div>
   </div>
  </div>
 </div>
</div>

</body>
</html>

Open in new window

0
 
LVL 83

Accepted Solution

by:
leakim971 earned 2000 total points
ID: 37708230
Ok, check this : http://jsfiddle.net/x6d29/

$("#xyz").closest("div[dir]").attr("dir");

Open in new window

0
 
LVL 16

Author Comment

by:hankknight
ID: 37709243
Thanks!  Is there a way to get it to test for all elements with the "dir" attribute?  I also want to look for these in <p> and <span> tags.
0
 
LVL 83

Expert Comment

by:leakim971
ID: 37709282
 var $all_wit_a_dir_att = $("div[dir]");

Open in new window

0

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

In Part 1 (http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/A_7849-Hex-Maze.html) we covered the hexagonal maze basics -- how the cells are represented in a JavaScript array and how the maze is displayed.  In this part, we'…
Boost your ability to deliver ambitious and competitive web apps by choosing the right JavaScript framework to best suit your project’s needs.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

585 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question