Reputation: 102439
I have a PHP file, Test.php, and it has two functions:
<?php
echo displayInfo();
echo displayDetails();
?>
JavaScript:
<html>
...
<script type="text/javascript">
$.ajax({
type:'POST',
url: 'display.php',
data:'id='+id ,
success: function(data){
$("#response").html(data);
}
});
</script>
...
<div id="response">
</div>
</html>
It returns the response from jQuery. The response shows as <a href=Another.php?>Link</a>
. When I click the Another.php link in test.php
, it loads in another window. But I need it to load the same <div> </div>
area without changing the content of test.php
, since it has displayInfo(), displayDetails()
. Or is it possible to load a PHP page inside <div> </div>
elements?
How can I tackle this problem?
Upvotes: 2
Views: 14662
Reputation: 13862
Krof is correct,
One possible unwanted behavior of this however is that it will query the data every time the link is clicked. You can set the event to only call the ajax query once by using one.
$("#mylink").one('click', function() {
// ajax call
return false;
});
Don't forget to set href="javascript:{}" in your link so after the event is fired once the link wont do anything;
Upvotes: 0
Reputation: 19841
If I understand correctly, you'd like for the a
link to cancel navigation, but fire the AJAX function?
In that case:
$("#mylink").click(function() {
$.ajax({ type: "POST", url: "another.php", data: {id: "somedata"}, function(data) {
$("#response").html(data);
});
return false;
});
Upvotes: 5