JavaScript动态生成Form提交

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
function post(url, params) {    
     var tempForm = document.createElement("form");
         tempForm.action = url;     
    tempForm.method = "post";    
     tempForm.style.display = "none";   
      for (var x in params) {           
  var opt = document.createElement("textarea");      
       opt.name = x;    
         opt.value = params[x];  
           // alert(opt.name)              tempForm.appendChild(opt);
          }        
 document.body.appendChild(tempForm);
         tempForm.submit();
          return tempForm;   
  } //调用方法  
 post('login.do', {username : xxxx, password : yyyy});
function postParamAndOpenWindow(urlAndQuery){    // 分割url和请求参数    var pos = urlAndQuery.indexOf('?')     var url = urlAndQuery.substring(0, pos); 
  var query = urlAndQuery.substring(pos + 1);
   // 动态建立Form中的数据    var tempForm = document.getElementById('tmpForm');
   tempForm.action = url;  
       tempForm.method = "post";
    var pairs = query.split("&"); 
        for(var i = 0; i < pairs.length; i++) {   
        var pos = pairs[i].indexOf('=');
           if (pos == -1) continue;  
         var argname = pairs[i].substring(0, pos);   
        var value = pairs[i].substring(pos + 1);  
         var opt = document.createElement("textarea");   
          opt.name = argname;      
     opt.value = value;     
      tempForm.appendChild(opt);     
   }     tempForm.submitBtn.click(); 
  return tempForm;
}//在页面处<a href="#" onclick="postParamAndOpenWindow("http://www.xxx.com/login?username=xxx&password=yyy');">

  

项目中,我们一般都是写上隐藏的form标签,用<a href="#" οnclick="..."/>来调用js函数,给form中表单要提交的内容赋值,然后submit提交。如果页面没有隐藏的form,我们可以用JavaScript动态生成Form提交,或者只有一个隐藏form,动态生成要传递的参数。
————————————————
版权声明:本文为CSDN博主「iteye_16906」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/iteye_16906/article/details/81890001

posted @   斯斯20222  阅读(151)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示