Hello, I've wondered if there is a way to do this for a while. Perhaps I am missing something or should use a different approach altogether.
Say I have a dynamic page that generates some td elements. The syntax here is freemarker but you can easily envision your favorite serverside text generating language instead. <table id="records"> <thead><th>Name</th></thead> <tbody> [#list records as record] <tr> <td class="trigger" id="trigger_${record.ID}" onclick="showDetails (${record.ID})">${record.name}</td> </tr> [/#list] </tbody> </table> <script type="text/javascript"> function showDetails(recordID) { // normally an ajax post but you get the idea window.location = '/record?recordID=' + recordID } </script> Now I want to get that onclick out of there and bind it using jquery, but i haven't been able to figure out if there is a way to get the parameter there. Apart from putting it in some attribute and looking at it. Is there a cleaner way? <script type="text/javascript"> $(document).ready(function() { $('#records td.trigger').click(function() { window.location = '/record?recordID=' + ??? how do i get that }); }); </script> I know I could look at the elements attributes, something like this.attr("id").substring().etc().etc() .. but sometimes there are many parameters to the javascript fn to generate the post and that approach doesn't seem to viable. and there isn't really a standard attribute to use that makes sense for that anyway. So how do I do this? Thanks