X-Git-Url: http://git.datanom.net/qtadmin.git/blobdiff_plain/b2d09a908fc3dabe2c239a02730fa3414d339930..f3d5584fe7570890f96f74f71c03e5cba5f2b435:/js/forms.js diff --git a/js/forms.js b/js/forms.js index ec2720f..f09ed99 100644 --- a/js/forms.js +++ b/js/forms.js @@ -1,24 +1,39 @@ /* vim: set ts=4 tw=4 sw=4 noet: */ function updateRowsPerPage() { + var pos; + var url; + var base; + var href; var rowsPerPage = document.getElementById("rows"); - var found = false; var link = document.getElementsByTagName('a'); + var found = false; for (var i = 0; i < link.length; i++) { - var url = link[i].href; - var pos = url.search('rowsperpage'); + url = link[i].href; + pos = url.search('rowsperpage'); if (pos >= 0) { found = true; - var base = url.slice(0, pos); - var href = base + 'rowsperpage=' + rowsPerPage.value; + base = url.slice(0, pos); + href = base + 'rowsperpage=' + rowsPerPage.value; link[i].href = href; } } if (found == false) { - /* current page has rows < current rows per page */ - var href = location.href; - href = encodeURI('index.php?rowsperpage=' + rowsPerPage.value); - alert(href); - location.href = href; + pos = location.href.search('rowsperpage'); + if (pos >= 0) { + base = location.href.slice(0, pos); + } else { + base = location.href; + } + if (location.href.charAt(location.href.length - 1) == '?') { + href = base + 'rowsperpage=' + rowsPerPage.value; + } else { + href = base + '?rowsperpage=' + rowsPerPage.value; + } + } else { + pos = location.href.search('rowsperpage'); + base = location.href.slice(0, pos); + href = base + 'rowsperpage=' + rowsPerPage.value; } + location.href = href; }