@@ -28,25 +28,27 @@ function formEntries (form) {
28
28
29
29
var entries = [ ]
30
30
31
- for ( var { name, type, value, files, checked, selectedOptions } of Array . from ( form . elements ) ) {
32
- if ( ! name ) {
31
+ for ( var i = 0 ; i < form . elements . length ; i ++ ) {
32
+ var element = form . elements [ i ]
33
+
34
+ if ( ! element . name ) {
33
35
continue
34
36
}
35
37
36
- if ( type === 'file' ) {
37
- for ( var file of files ) {
38
- entries . push ( [ name , file ] )
38
+ if ( element . type === 'file' ) {
39
+ for ( var j = 0 ; j < element . files . length ; j ++ ) {
40
+ entries . push ( [ element . name , element . files [ j ] ] )
39
41
}
40
- } else if ( type === 'select-multiple' || type === 'select-one' ) {
41
- for ( var elm of Array . from ( selectedOptions ) ) {
42
- entries . push ( [ name , elm . value ] )
42
+ } else if ( element . type === 'select-multiple' || element . type === 'select-one' ) {
43
+ for ( var j = 0 ; j < element . selectedOptions . length ; j ++ ) {
44
+ entries . push ( [ element . name , element . selectedOptions [ j ] . value ] )
43
45
}
44
- } else if ( type === 'checkbox' ) {
45
- if ( checked ) {
46
- entries . push ( [ name , value ] )
46
+ } else if ( element . type === 'checkbox' ) {
47
+ if ( element . checked ) {
48
+ entries . push ( [ element . name , element . value ] )
47
49
}
48
50
} else {
49
- entries . push ( [ name , value ] )
51
+ entries . push ( [ element . name , element . value ] )
50
52
}
51
53
}
52
54
@@ -94,7 +96,10 @@ $(function () {
94
96
var params = { }
95
97
var entries = formEntries ( $form . get ( ) [ 0 ] )
96
98
97
- for ( var [ paramKey , paramValue ] of entries ) {
99
+ for ( var i = 0 ; i < entries . length ; i ++ ) {
100
+ var entry = entries [ i ]
101
+ var paramKey = entry [ 0 ]
102
+ var paramValue = entry [ 1 ]
98
103
var $elem = $form . find ( '[name=' + paramKey + ']' )
99
104
var dataType = $elem . data ( 'type' ) || 'string'
100
105
0 commit comments