Added a bunch of improved support for DOM Element arrays - along with a new $.A(...
[jquery.git] / form / form.js
index d1a7ba7..f391fcf 100644 (file)
@@ -37,7 +37,7 @@
  * @param url      form action override\r
  * @param mth      form method override\r
  * @return         "this" object\r
- * @see            ajaxForm(), serialize(), load(), $.xml()\r
+ * @see            ajaxForm(), serialize(), load(), $.ajax()\r
  * @author         Mark Constable (markc@renta.net)\r
  * @author         G. vd Hoven, Mike Alsup, Sam Collett, John Resig\r
  */\r
@@ -52,12 +52,12 @@ $.fn.ajaxSubmit = function(target, post_cb, pre_cb, url, mth) {
        var mth = mth || f.method || 'POST';\r
 \r
        if (target && target.constructor == Function) {\r
-               $.xml(mth, url, $.param(this.vars), target);\r
+               $.ajax(mth, url, $.param(this.vars), target);\r
        } else if (target && target.constructor == String) {\r
                $(target).load(url, this.vars, post_cb);\r
        } else {\r
                this.vars.push({name: 'evaljs', value: 1});\r
-               $.xml(mth, url, $.param(this.vars), function(r) {\r
+               $.ajax(mth, url, $.param(this.vars), function(r) {\r
                        eval(r.responseText);\r
                });\r
        }\r
@@ -127,6 +127,19 @@ $.fn.ajaxForm = function(target, post_cb, pre_cb) {
        });\r
 };\r
 \r
+/*\r
+\r
+$.ajax({\r
+       type: "POST",\r
+       url: "foo.cgi",\r
+       data: $.param( $("form").formdata() ),\r
+       success: function(){},\r
+       error: function(){},\r
+       complete: function(){}\r
+});\r
+\r
+ */\r
+\r
 /**\r
  * A simple wrapper function that sits around the .serialize()\r
  * method, allowing you to easily extract the data stored within\r
@@ -197,10 +210,8 @@ $.fn.serialize = function() {
                var p = par.nodeName.toUpperCase();\r
                if ((p == 'SELECT' || p == 'OPTGROUP') && !this.selected) return;\r
 \r
-               var n = this.name || par.name;\r
-               if (!n && p == 'OPTGROUP' && (par = par.parentNode))\r
-                       n = par.name;\r
-\r
+               var n = this.name;\r
+               if (!n) n = (p == 'OPTGROUP') ? par.parentNode.name : (p == 'SELECT') ? par.name : this.name;\r
                if (n == undefined) return;\r
 \r
                a.push({name: n, value: this.value});\r