| <html> |
| <script> |
| function moveRow(from, to) |
| { |
| if (from == -1 && to == -1) |
| { |
| var fromE = document.getElementsByTagName("INPUT")[0]; |
| from = parseInt(fromE.value); |
| var toE = document.getElementsByTagName("INPUT")[1]; |
| to = parseInt(toE.value); |
| } |
| var row = document.getElementsByTagName("TR")[from]; |
| row.rowIndex = to; |
| } |
| function runTests() |
| { |
| // Test fails if final ordering differs from initial ordering |
| // |
| // Starting with order 0,1,2,3,4,5 shift through the rows and |
| // end up back where we started. |
| moveRow(0, 5); |
| moveRow(1, 4); |
| moveRow(2, 3); |
| moveRow(3, 2); |
| moveRow(4, 1); |
| moveRow(5, 0); |
| |
| // Throw 2 out-of-bounds tests at the end and still get back to the starting point. |
| moveRow(5, -1); |
| moveRow(0, 6); |
| } |
| function delay() |
| { |
| setTimeout("runTests()", 9); |
| } |
| </script> |
| <body bgcolor=white onload="delay()"> |
| <table> |
| <tr><td>Row 0</td></tr> |
| <tr><td>Row 1</td></tr> |
| <tr><td>Row 2</td></tr> |
| <tr><td>Row 3</td></tr> |
| <tr><td>Row 4</td></tr> |
| <tr><td>Row 5</td></tr> |
| </table> |
| <input type=text name=from value=2 size=1> |
| <input type=text name=to value=4 size=1> |
| <input type=button name=go value=go onclick="moveRow(-1,-1);"> |
| </body> |
| </html> |