search

Home  >  Q&A  >  body text

javascript - ajax怎么把一个表单都提交过去??

以前用ajax都是验证一条数据 比如一个用户名或者邮箱什么的 这个data都是一条input数据 但是现在是两条数据了 怎么提交过去呢?用js

function ajax(url,data,funsucc){
            var oAjax=new XMLHttpRequest();
            oAjax.open('post',url,true);                   
            oAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
            oAjax.send("id="+data);    
            oAjax.onreadystatechange=function(){
              if(oAjax.readyState==4){
                if(oAjax.status==200){
                  funsucc(oAjax.responseText);
                }
              }
            }
        }
<form id="fm1">
    <input id="name" type="text">
    <input id="password" type="text">
    <button type="submit">提交</button>
</form>
PHP中文网PHP中文网2895 days ago283

reply all(1)I'll reply

  • 巴扎黑

    巴扎黑2017-04-10 17:23:50

    把你需要提交的数据处理成类似于 key1=value1&key2=value2 这种query string的形式放入request body即可

    // 我这里直接把name和password放进args里了,按照自己需求修改
    function ajax(url, name, password, funsucc){
        var oAjax=new XMLHttpRequest();
        oAjax.open('post',url,true);                   
        oAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
        /**
         * 这里是关键
         * 把你需要提交的数据处理成类似于 key1=value1&key2=value2 这种query string的形式放入request body即可
         */
        oAjax.send("name=" + name + "&password=" + password);
        oAjax.onreadystatechange=function(){
            if(oAjax.readyState==4){
            if(oAjax.status==200){
                funsucc(oAjax.responseText);
            }
            }
        }
    }

    enjoy

    reply
    0
  • Cancelreply