JQuery :: Why Event Handlers Firing More Than Once After Ajax
Jul 14, 2010
I'll start off by saying I'm a novice developer. I'm building an mvc application and recently started using the jquery hotness. I've set up a right hand nav and bound click events for collapsible panes. Inside one of those divs (action pane) I've bound click events which will open a modal dialog with a form. The form is submitted with $.post(). Then I've used $.get() to refresh several divs with the new content. Once that happens, all of my links begin to fire twice (collapsible panes and the links in the action pane) in ie8 and the latest firefox but not in chrome. I pulled out all the markup and js and put it on a static test site: [URL].
View 1 Replies
ADVERTISEMENT
Apr 28, 2010
I'm loading a list of elements into mydiv with ajax, I want them to be selectable so I call the UI plugin selectable after the list has loaded.
The list building function produces this:
<div id='mydiv'>
<ul id='mylist'>
....
</ul>
[Code].....
The problem is, every time I click the link to reload the list via ajax, I get a duplicate selectable event handler created. Should I be removing the old event handlers before reloading the div ? if so, how?
Everything works, as in selectable still works, and only seems to fire once but I get ever growing memory usage in firefox and an ever growing list of event handlers in the firebug script tab. Eventually firefox starts to crawl and I have to restart the browser.
View 1 Replies
View Related
May 2, 2009
I've written some functions that seem to be able to handle parallel AJAX requests. However, I am not sure if they would work under all circumstances.My idea was to create a separate object for each AJAX request in order to bind the right handler function to the appropriate .onreadystatechange. I have used an array to store references to the created objects so that they would not be garbage collected as long as needed (see the lines commented out below). I have noticed, however, that everything works nicely even if I don't save these references -- so, with these lines commented out.
My question basically is whether it is safe to do so, and what prevents these objects from being deleted by the garbage collector. As both the event and the handler function appear to be in the same object, I think it will not stop the garbage collector.
In my code, ajax_req() is called to make a request; it will create the new ajax_abs object whose constructor takes care of the rest.
// ajaxrequests=new Array();
function ajax_abs(method,page,str,dest,todo,myno){
function init(){
[code]....
Furthermore, is it possible to tell the interpreter after the request succeeds, that now it should garbage-collect the object?
View 1 Replies
View Related
Apr 6, 2010
Trying to add new HTML elements to the document using the jQuery append() function it seems it doesn't add event handlers to the newly created elements.jQuery only seems to add these in Internet Explorer:
<a href="#" onclick="alert('...'); return false;">Test</a>
In Opera, Safari and Google, all my hyperlinks look something like this:
<a href="#">Test</a>
This code is similar to what I have written:
body.append('
<a
href="#" onclick="alert('...'); return false;">Test</a>');
View 4 Replies
View Related
Oct 13, 2011
I have a piece of javascript which does not work as intended. The code is:
var v = document.getElementById('ReportViewer1');
if (v) { v.ClientController.CustomOnReportLoaded = endPoll;
}
The endPoll event handler should be added to the list of event handlers for CustomOnReportLoaded. In the code about, it removes all other event handlers and just adds itself. Looking through JQuery i found:
$('#foo').bind('click', function() {
alert($(this).text());
});
this will add the new event handler to the collection of event handlers already attached to the click event.how do I select the ClientController through JQuery's selectors?
View 1 Replies
View Related
Aug 10, 2009
which is the recommended way to bind event handlers to elements. Preferably without giving each of them an id. As far as I know, the "classic" way (<input onchange="...">) is considered deprecated and evil. So what is the jQuery way of doing this?
View 2 Replies
View Related
Dec 6, 2010
having multiple event handlers which are bind on the same event on the same element.
1) are those handlers called in a particular order? can I espect to see them called in the same order I bind them?
2) is it possible for one such handlers to prevent the execution of all the other handlers?
View 2 Replies
View Related
Oct 1, 2011
Trying to get a handle on the basic syntax.
I want to use .ajax instead of the following js function so that I can use the event handlers to update the DOM after changing the contents of a jQuery UI tab. What happens now is that the DOM only contains the first loading of the JQuery UI tab (fragment-3 in this example). Once the tab is changed by the displayfrag3 function (a table is rewritten with new <td ids>) the DOM doesn't see any new id tags so "on click" functions using the new ids don't work.
My Call to this Function:
My Attempt at using jQuery .ajax:
What is the call statement for this and how do I pass a variable to it?
Could someone show me the correct jQuery .ajax code and explain how to add the success handler to update the DOM.
View 11 Replies
View Related
Feb 8, 2011
I have a simple filmstrip that uses getJSON to return data. The data is an array containing two arrays. The first, is the base path to photos. The second is a list of the photo file names. I am trying to loop through the array of photos and set them in divs. Then I need to attach an event to popup a larger view of the image placed in a dynamically generated div containing the image and initially hidden.
So what I am trying to accomplish is:
1. get JSON data from server.
2. get base image path from json data array
3. get list of images from json data array
4. Loop through list of images, prepend base path and assign to hard coded div.
5. create a dynamically generated div with larger version of same image.
6. Attach hover action to cause a mouse-over action on the hard coded div to popup the dynamically generated div containing the larger version of the image.
My issue is that once my code runs, no matter what image in the filmstrip I mouse over I always get a popup with the last image in it. Here is my code:
<script language="javascript">
$(document).ready(
function(){
$.getJSON("<?php echo site_url('filmstrip/index');?>",
function(data){
var dir = data['dir'];
var imgs = data['imgs'];
var i =0; .....
View 3 Replies
View Related
Aug 20, 2009
is there a way to set up a page so that a event handler function is bound to a DOM object and event but it runs _after_ the browser's default action is complete?
View 2 Replies
View Related
Mar 11, 2010
I would like to add an event handler to the submit() method on the form. If the form contains an elemant recaptcha, it should show a recpatcha in a modal, and upon completing that recaptcha, assign the entered captcha to that element to be submitted long the form.
Basically, I would be able to attach the code that renders the modal and the recaptcha form in the .submit event handler.
I was just wondering; if we have multiple form.submit() handlers that we attach to the forms. in what order are they executed? and what if one of the handlers return false - will the others still be executed? What if we add the "preventDefault" call in any of these handlers?
Basically - I need to know how I can make sure that this handler I'm attaching to the form does not interfere with any other handlers that may have been attached to the forms submit event...
View 1 Replies
View Related
Feb 17, 2011
I've got an ajax prefilter which defines a success, an error, and a complete function callback onto the jXHR object. During a successful ajax response I first his the success function callback (as expected), and if I throw an error from within this callback I hit the error callback (again, as expected). However, at this point I would assume my complete callback would be called, yet it never is. I ran a sanity test by issuing an ajax request to an undefined URL, which throws a 404, and it triggered my error callback and then my complete callback as expected.
View 5 Replies
View Related
Oct 31, 2010
I have some ajax gotten content which I want to fire a scroll event on. Its basically a table inside a div, and the div has scrolling enabled. The divs class is data table.
[Code]...
View 7 Replies
View Related
Jul 17, 2010
I've noticed that the change event isn't being fired for me on form elements when the changes are made pragmatically (eg, using the attr() method). For instance, a checkbox's change event fires if I click it, but not if I use .attr('checked', false);
I'm using jQuery 1.4.2 and Firefox 3.6.6. I did notice that the native event handler (as in, adding an onClick attribute to the element manually) doesn't work either, so evidently this is NOT a bug in jQuery.
I just wonder if anyone knows a way around it. I'm particularly interested in catching the change event from form elements after clearing the form.
View 2 Replies
View Related
Apr 18, 2011
In IE only, the change event on a select does not seem to fire if the change is made by typing on the keyboard instead of clicking with the mouse. However, when the focus leaves the field, the event fires.
View 4 Replies
View Related
Jun 24, 2011
I am trying to run a click event where and if statement is run to check for a certain image being clicked before running code. I set up this if in two ways:
[Code]...
Here is the link to my jquery game. Click on the black square to start, then a click on a grey square to see what I am talking about. The second function I mentioned is the current in the code.[URL]..
View 7 Replies
View Related
Jun 22, 2011
I have a 300x150 container div with a small inner div that has a image link button inside..When the user hovers over the button, it currently does .hide on the visible container div and .show on another div.However, I don't want the event to fired instantly, I would like for the animations to take affect 3000 milliseconds after their mouse has entered the button div to prevent the event from firing without the users intention.
View 1 Replies
View Related
Jun 17, 2010
I have the following code:
<script
type
="text/javascript"
>
[Code].....
...which I thought should fire for the id="hover" element which the mouse is over, regardless of index.
Unfortunately, it's only working for the first hover element on the page..
View 1 Replies
View Related
Jun 17, 2011
I am working on a button that fires a few different fadeIn()'s upon clicking it but nothing is happening. I have same setup working just fine with another button, but this one doesnt do it.
[Code]...
View 5 Replies
View Related
Jun 22, 2011
I have a form element that is readonly. <input type="text" id="kfs_acct_1" readonly="false" /> This field is dynamically populated an making it readonly prevents users from changing the value in this field. The problem I have is users click on the field and try to delete it's value. They click in the field and hit their Backspace key. This takes them away from the page to the page from whence they came. Because of the way the form is set up, doing this makes them loose all the data in the form (the one with the readonly box). How can I prevent the Backspace key from fireing and taking the user away from this page? I've tried a few things, but apparently making a field readonly keeps some key events from being seen.
[Code]...
View 1 Replies
View Related
Jul 23, 2005
Sorry for the re-post but the original message subject no longer
applies. If I try this in IE5, it doesn't work:
<script type="text/javascript">
window.onload = foo;
</script>
<body>
whereas this does work:
<body onload="javascript:foo();">
This is not the way I want to handle events. I checked MSDN and it seems
to indicate that the first way should work. Is there something I can do
to get the first way (event handlers?) to work in IE5?
View 4 Replies
View Related
Jul 20, 2005
Can I use CSS to set onmouseover ?
In HTML I have a bunch of <A HREF="whatever"
onmouseover=eventhandler(this)">stuff</A>. I would prefer not to have the
onmouseover 'pollution'
Is it possible to specify the eventhandler using css ? i.e.
<A HREF="whatever" class="foo">stuff</A>.
View 3 Replies
View Related
Jul 12, 2010
$('#newPrice').change(function() {
this.value = this.value.replace(/[^0-9.]/g,'');
checkPrice();
[Code].....
Ok, so the above code will do the regex when the contents of the textbox changes, but it does not seem to call the checkPrice function I've placed after it does the regex.
I have the above on Change code in a .keyup event and it works as expected.
View 1 Replies
View Related
Aug 13, 2009
New to jQuery, I did many searches before posting. This is happening in both IE6 and Firefox 3.0.13. I've gotten the following script to work under strange circumstances (explained below
first snippet).
[Code]...
View 6 Replies
View Related
Nov 6, 2011
Hide/Show column based on select option.jQuery is not showing any events. Is the selected event not firing?
View 1 Replies
View Related
Jun 27, 2011
I have some jQuery making ajax requests that works just fine if the server returns a 200 but whenever it returns any error HTTP status none of the events fire. It's happening on more than one request to different servers but I'll just include one example for now:
var ajaxResponse = $.ajax({
url: widget.serviceURL + 'customer/createAjax?'+$('#ndBookingFormStep1').serialize(),
dataType: 'jsonp',
success: function(data, textStatus, jqXHR){
console.log(data);
if( data.status != 'OK'){
widget.message(data.status);
} else {
console.log(data);
}}})
.error(function(jqXHR, textStatus, errorThrown){
console.log(jqXHR);
}).complete(function(jqXHR, textStatus){
console.log(jqXHR);
});
console.log(ajaxResponse);
console.log(ajaxResponse.responseText );
The request gets made just fine, I can see the response in the net console in firebug and it returns the data I want with a 500 when I do not complete the form correctly. However, it does not fire either the error or the complete function when I get this status, and the ajaxResponse.responseText is undefined when it is logged to the screen. When the form is completed and the request is successfull the success function fires just fine.
View 8 Replies
View Related