Solved

JQuery Events doesn't work after reload PHP with JQUERY .load()

Posted on 2012-03-26
5
663 Views
Last Modified: 2012-08-14
Hello Experts

I have a little Problem ...
I have to reload a PHP-Script per JQuery .load()
The PHP-Script includes a Button that triggers a JQuery .click() event.
The .click() Event reload the PHP-Script in a DIV ...
After reloading the Script, the .click() doesn't work ...

here is my code for examle ...

index.php
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>

	<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>

<style type="text/css">
	
#testdiv h2.h2newcolor {
	color: #00FF00;
}
</style>

</head>
<body>


<div id="testdiv">
<?php	
	include 'load.php';
?>	
</div>

<script type="text/javascript">
	
$('#mybutton').click(function(){
		$("#testdiv").load("load.php");
		alert('loading ready');
});
	
</script>

</body>
</html>

Open in new window


and her the PHP-Script for load/reload ...
load.php
<?php

	echo "<h2 class=\"h2newcolor\">MyNewTitle</h2><br />\n";
	echo "<input type=\"button\" id=\"mybutton\" />\n";

?>

Open in new window


I hope anyone can help

Thanx

Talki
0
Comment
Question by:Talki
  • 3
5 Comments
 
LVL 7

Expert Comment

by:designatedinitializer
ID: 37765434
I guess that when you load new stuff into the document, you lose the reference to #mybutton.
You can try including the JS script inside the load.php, like this:
<?php
	echo "<h2 class=\"h2newcolor\">MyNewTitle</h2><br />\n";
	echo "<input type=\"button\" id=\"mybutton\" />\n";

?>
<script type="text/javascript">
$('#mybutton').click(function(){
		$("#testdiv").load("load.php");
		alert('loading ready');
});
</script>

Open in new window

0
 

Author Comment

by:Talki
ID: 37765459
hello ...

that's right ...

but i have to lode more than one div's ...

in this case jquery is two, three or fourtimes in the html source ...

i dont know if this make any problems or more than one events are running ...

thanx

talki
0
 
LVL 75

Accepted Solution

by:
Michel Plungjan earned 500 total points
ID: 37765539
Try this

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

<script type="text/javascript">
function loadIt() {
  $("#testdiv").load("load.php",function() {
    alert('loading ready');
  });
}
$(document).ready(function() {
  $('#mybutton').live("click",function(){
    loadIt();
  });
  loadIt();
});
</script>
<style type="text/css">
#testdiv h2.h2newcolor {
	color: #00FF00;
}
</style>
</head>
<body>
<div id="testdiv"></div>
</body>
</html>

Open in new window

0
 

Author Comment

by:Talki
ID: 37765840
good idea ...

i think this can be the right way ... i try it ;-)

thanx

talki
0
 

Author Comment

by:Talki
ID: 37768506
hi,

i'am ready with testing, and it works very fine ...
thanx for your fast help ...

bye

talki
0

Featured Post

MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
In threads here at EE, each comment has a unique Identifier (ID). It is easy to get the full path for an ID via the right-click context menu. However, we often want to post a short link within a thread rather than the full link. This article shows a…
The viewer will learn how to count occurrences of each item in an array.
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.

740 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