Solved

Stop link from working - return false?

Posted on 2008-10-27
7
4,442 Views
Last Modified: 2013-11-11
Hi,

I want jQuery to load the right file into the right div by AJAX, and so I need to disable the a tags from doing what they usually do.  I thought that returning false, as I have done in the code snippet, would do this, but it didn't.

Can anyone help?

.yes is an 'a' tag wrapped around an img, it is inside a div with an id of #box_1.  Have I got the selector syntax right?

Thanks
<script type="text/javascript" src="jquery-1.2.6.js">

</script>

<script type="text/javascript">
 

$(document).ready(function(){

	$('#box_1.yes').click(function(){

		var next = this.attr('href');

		$('#box_2').load(next);

		return false;

	});

});
 

</script>

Open in new window

0
Comment
Question by:deafpanda
  • 4
  • 2
7 Comments
 

Author Comment

by:deafpanda
Comment Utility
To clarify, the code above makes no difference to the page - ie when .yes is clicked, the browser is taken to the new page, rather than the file being AJAXed in.
0
 
LVL 18

Expert Comment

by:wilq32
Comment Utility
if you dont have... dont use href - put it in other attribute and it will work. As far as i know href attribute is always fired if it contains something :)
0
 
LVL 1

Expert Comment

by:jwfranklin
Comment Utility
Inside the event handler type event.preventDefault(); that will do the same as return false
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 1

Expert Comment

by:jwfranklin
Comment Utility

<script type="text/javascript" src="jquery-1.2.6.js">

</script>

<script type="text/javascript">

 

$(document).ready(function(){

        $('#box_1.yes').click(function(event){

                event.preventDefault();

                var next = this.attr('href');

                $('#box_2').load(next);

        });

});

 

</script>

Open in new window

0
 
LVL 1

Accepted Solution

by:
jwfranklin earned 500 total points
Comment Utility
Plus also your selector is wrong, it should be:

$('#box_1 a.yes').click(function(event){
0
 

Author Comment

by:deafpanda
Comment Utility
Thanks for the responses,

I've altered the code so that it now reads exactly like the snippet attached in jwfranklin's comment.  The same thing happens - when .yes is clicked I am taken to the page relating to the href attribute of .yes.

Just in case there's a problem with my HTML, I've attached that.
<div id="box_1">

<div class="rounded_box">

<div class="box_top">

<div class="top_right">

</div>

</div>

<div class="box_content">

<p>Do you know what type of project would be suitable for your site?</p>

<div class="choices"><a class="yes" href="one_yes.html"><img src="yes.png" alt="Yes" /></a><a class="no" href="one_no.html"><img src="no.png" alt="no" /></a></div>

</div>

<div class="box_bottom">

<div class="bottom_right">

</div>

</div>

</div>
 

</div>

<div id="box_2">

Open in new window

0
 
LVL 1

Expert Comment

by:jwfranklin
Comment Utility
For your HTML your selector will be

$('.choices a.yes').click(function(event) { ... });
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

Suggested Solutions

PROBLEM: The other day I was working on adding an ajax request to a webpage that already had a dialog box on the page.  The dialog box was using relative positioning to be positioned next to a form field I had on the page.  Everything was working…
Introduction If you're like most people, you have occasionally made a typographical error when you're entering information into an online form.  And to your consternation, the browser remembers the error, and offers to autocomplete your future entr…
The viewer will learn how to dynamically set the form action using jQuery.
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)

771 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now