• url参数过长处理办法


    常用的解决办法是将get请求换成post,但是遇到只能用get请求的时候,该怎么解决呢? 答案是: 我们可以借用form表单提交

    在开发过程中,遇到这么一个问题:我需要在A点击一个按钮,打开一个新的页面B,但是由于参数过长,导致页面请求失败,找了很多办法,终于解决了

    //A页面
    function printStoreIn() {
      window.open("A.vm?sid="+sid);
    }
    
    <script type='text/javascript'> 
    //B页面
    var sid= jQuery.request("sid");
    jQuery.ajax({
    	url: 'XX.do',
    	type: 'post',
    	dataType: 'json',
    	data: {
    		"sid":sid
    	},
    	success: function (result) {
    		if(result.isOk) {
    			var s =[]; 
    			var param;
    			var data = result.data;
    			if (data){
    				for(var i=0; i<data.length; i++){
    					param = '&sid='+sid+ '&pid=' + data[i].pid;
    					s.push(data[i].pname+',/simple/v.do?_m=/B.vm'+param);
    				}
    				var tempForm = document.createElement("form"); 
    				tempForm.id="tempForm1";
    				tempForm.method="post"; 
    				tempForm.action="/tabs.jsp"; 
    				var hideInput = document.createElement("input");    
    				hideInput.type="hidden"; 
    				hideInput.name= "tabs"; 
    				hideInput.value= Uri(s.join(";"));
    				tempForm.appendChild(hideInput); 
    				if(document.all){
    			        tempForm.attachEvent("onsubmit",function(){ });        //IE
    			    }else{
    			        var subObj = tempForm.addEventListener("submit",function(){ },false);    //firefox
    			    }
    			    document.body.appendChild(tempForm);
    			    if(document.all){
    			        tempForm.fireEvent("onsubmit",function(){ });
    			    }else{
    			        tempForm.dispatchEvent(new Event("submit"));
    			    }
    			    tempForm.submit();
    			    document.body.removeChild(tempForm);
    			}
    		}
    	},
    	error: function (XMLHttpRequest, textStatus, errorThrown) {
    		mini.alert("加载失败!");
    	}
    });
    </script>
    

     参考资料:https://blog.csdn.net/blacktsky/article/details/52909660

  • 相关阅读:
    数据的艺术
    第十七篇 make的路径搜索综合实践
    第十六篇 make中的路径搜索
    第十五篇 make中的隐式规则概述
    第十四篇 自动生成依赖关系(终结)
    [SDOI2009]HH的项链解题报告
    欧几里德与扩展欧几里德算法的理解、实现与应用
    浅析强连通分量(Tarjan和kosaraju)
    deque-at
    plt.imshow()
  • 原文地址:https://www.cnblogs.com/xiaoQ0725/p/9086789.html
Copyright © 2020-2023  润新知