code_junkie

Reordering of table rows with arrow images for up and down

Nov 14th, 2011
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. function swap(a, b, direction){
  2. var html = a.wrapInner('<tr></tr>').html()
  3. a.replaceWith(b.wrapInner('<tr></tr>').html())
  4. b.replaceWith(html)
  5. }
  6. function getParent(cell){ return $(cell).parent('tr') }
  7. $(document).ready(function(){
  8. $('.upArrow').live('click', function(){
  9. var parent = getParent(this)
  10. var prev = parent.prev('tr')
  11. if(prev.length == 1){ swap(prev, parent); }
  12. })
  13. $('.downArrow').live('click', function(){
  14. var parent = getParent(this)
  15. var next = parent.next('tr')
  16. if(next.length == 1){ swap(next, parent) }
  17. })
  18. })
  19.  
  20. <table>
  21. <tbody>
  22. <tr><td>1</td><td class="upArrow">up</td><td class="downArrow">down</td></tr>
  23. <tr><td>2</td><td class="upArrow">up</td><td class="downArrow">down</td></tr>
  24. <tr><td>3</td><td class="upArrow">up</td><td class="downArrow">down</td></tr>
  25. </tbody>
  26. </table>
  27.  
  28. function Func(trigger, blnUp){
  29. var trigRow = $("#" + trigger.id).parent().parent();
  30. var prevRow = trigrRow.prev();
  31. var nextRow = trigRow.next();
  32. var trigRowHTML = "";
  33. if(blnUp){
  34. trigRowHTML = prevRow.html();
  35. prevRow.html(trig.html());
  36. }else{
  37. trigRowHTML = nextRow.html();
  38. nextRow.html(trig.html());
  39. }
  40. }
  41.  
  42. <table>
  43. <tbody>
  44. <tr><td>1</td><td><a onclick="Func(this, true)">UP</a></td><td><a onclick="Func(this, false)">UP</a></td></tr>
  45. <tr><td>2</td><td><a onclick="Func(this, true)">UP</a></td><td><a onclick="Func(this, false)">UP</a></td></tr>
  46. <tr><td>3</td><td><a onclick="Func(this, true)">UP</a></td><td><a onclick="Func(this, false)">UP</a></td></tr>
  47. </tbody>
  48. </table>
Add Comment
Please, Sign In to add comment