Ticket #2844: dojo_0.4.3_formbind_bug.patch

File dojo_0.4.3_formbind_bug.patch, 2.4 kB (added by jaredj, 18 months ago)
  • src/io/ScriptSrcIO.js

     
    119119                var query = ""; 
    120120                 
    121121                if(kwArgs["formNode"]){ 
    122                         var ta = kwArgs.formNode.getAttribute("action"); 
     122                        var ta = dojo.io._getAttribute(kwArgs.formNode, "action"); 
    123123                        if((ta)&&(!kwArgs["url"])){ url = ta; } 
    124                         var tp = kwArgs.formNode.getAttribute("method"); 
     124                        var tp = dojo.io._getAttribute(kwArgs.formNode, "method"); 
    125125                        if((tp)&&(!kwArgs["method"])){ kwArgs.method = tp; } 
    126126                        query += dojo.io.encodeForm(kwArgs.formNode, kwArgs.encoding, kwArgs["formFilter"]); 
    127127                } 
  • src/io/BrowserIO.js

     
    4848        dojo.io.bind(args); 
    4949} 
    5050 
     51dojo.io._getAttribute = function(node, key){ 
     52        //      summary:        Function to get around IE problems with getAttribute. 
     53        var attrNode = node.getAttributeNode(key); 
     54        if(attrNode){ 
     55                return attrNode.value; 
     56        } 
     57        return null; 
     58} 
     59 
     60 
    5161dojo.io.formFilter = function(/*DOMNode*/node) { 
    5262        //summary: Returns true if the node is an input element that is enabled, has 
    5363        //a name, and whose type is one of the following values: ["file", "submit", "image", "reset", "button"] 
     
    476486                var url = kwArgs.url; 
    477487                var query = ""; 
    478488                if(kwArgs["formNode"]){ 
    479                         var ta = kwArgs.formNode.getAttribute("action"); 
     489                        var ta = dojo.io._getAttribute(kwArgs.formNode, "action"); 
    480490                        if((ta)&&(!kwArgs["url"])){ url = ta; } 
    481                         var tp = kwArgs.formNode.getAttribute("method"); 
     491                        var tp = dojo.io._getAttribute(kwArgs.formNode, "method"); 
    482492                        if((tp)&&(!kwArgs["method"])){ kwArgs.method = tp; } 
    483493                        query += dojo.io.encodeForm(kwArgs.formNode, kwArgs.encoding, kwArgs["formFilter"]); 
    484494                } 
  • src/io/IframeIO.js

     
    107107                                        } 
    108108                                } 
    109109                                if(cr["url"]){ 
    110                                         cr._originalAction = fn.getAttribute("action"); 
     110                                        cr._originalAction = dojo.io._getAttribute(fn, "action"); 
    111111                                        fn.setAttribute("action", cr.url); 
    112112                                } 
    113                                 if(!fn.getAttribute("method")){ 
     113                                if(!dojo.io._getAttribute(fn, "method")){ 
    114114                                        fn.setAttribute("method", (cr["method"]) ? cr["method"] : "post"); 
    115115                                } 
    116116                                cr._originalTarget = fn.getAttribute("target");