]> git.joonet.de Git - adminer.git/commitdiff
Copy value of SELECT in add_row
authorjakubvrana <jakubvrana@7c3ca157-0c34-0410-bff1-cbf682f78f5c>
Tue, 24 Jul 2007 12:30:53 +0000 (12:30 +0000)
committerjakubvrana <jakubvrana@7c3ca157-0c34-0410-bff1-cbf682f78f5c>
Tue, 24 Jul 2007 12:30:53 +0000 (12:30 +0000)
IE compatible type_change

git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@235 7c3ca157-0c34-0410-bff1-cbf682f78f5c

editing.inc.php

index b772ca10ffe9ae369676e519f9ba54260bc2f243..bae3ee1e0b89e22d07209a9663aa268e17835b73 100644 (file)
@@ -125,25 +125,31 @@ function add_row(button) {
        var match = /([0-9]+)(\.[0-9]+)?/.exec(button.name)
        var x = match[0] + (match[2] ? added.substr(match[2].length) : added) + '1';
        var row = button.parentNode.parentNode;
-       row.parentNode.insertBefore(row.cloneNode(true), row);
-       var tags = row.getElementsByTagName('*');
+       var row2 = row.cloneNode(true);
+       var tags = row.getElementsByTagName('SELECT');
+       var tags2 = row2.getElementsByTagName('SELECT');
+       for (var i=0; i < tags.length; i++) {
+               tags[i].name = tags[i].name.replace(/([0-9.]+)/, x);
+               tags2[i].selectedIndex = tags[i].selectedIndex;
+       }
+       tags = row.getElementsByTagName('INPUT');
        for (var i=0; i < tags.length; i++) {
                if (tags[i].name == 'auto_increment_col') {
                        tags[i].value = x;
-               } else if (tags[i].name) {
-                       tags[i].name = tags[i].name.replace(/([0-9.]+)/, x);
-                       if (/\[(orig|field|comment)/.test(tags[i].name)) {
-                               tags[i].value = '';
-                       }
+               }
+               tags[i].name = tags[i].name.replace(/([0-9.]+)/, x);
+               if (/\[(orig|field|comment)/.test(tags[i].name)) {
+                       tags[i].value = '';
                }
        }
+       row.parentNode.insertBefore(row2, row);
        added += '0';
        return true;
 }
 function type_change(type) {
        var name = type.name.substr(0, type.name.length - 6);
-       type.form[name + '[collation]'].style.display = (/char|text|enum|set/.test(type.form[name + '[type]'].value) ? '' : 'none');
-       type.form[name + '[unsigned]'].style.display = (/int|float|double|decimal/.test(type.form[name + '[type]'].value) ? '' : 'none');
+       type.form[name + '[collation]'].style.display = (/char|text|enum|set/.test(type.options[type.selectedIndex].text) ? '' : 'none');
+       type.form[name + '[unsigned]'].style.display = (/int|float|double|decimal/.test(type.options[type.selectedIndex].text) ? '' : 'none');
 }
 for (var i=1; <?php echo $count; ?> >= i; i++) {
        document.getElementById('form')['fields[' + i + '][type]'].onchange();