KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a form with an onsubmit attribute. I need to bind a new submit event and I need this one to be executed before any existing submit functions. The following code demonstrates the problem. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Test</title> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> <script type="text/javascript"> jQuery(function($) { // a plugin $('form').submit(function() { alert("Second"); }); // an other plugin $('form').submit(function() { alert("Third"); }); // this event must always be executed as first event $('form').submit(function() { alert("Always First"); }); }); </script> </head> <body> <form onsubmit="javascript:alert('Fourth');"> <p> <input type="submit"> </p> </form> </body> </html> If you execute the script, first you get "Second", then "First". Is is possible to bind a new submit event and specify whether the function must be called before any existing event? Constraints: Existing events must be preserved. I can't remove existing events because the content of the onsubmit attribute contains a quite complex logic written by Rails (ADDED): the event should always be executed before any existing onsubmit event and already binded events (perhaps binded by an other plugin) Any idea?
Tags (comma-separated)
Save Edits
Cancel