1. 程式人生 > >js 模擬表單post方式提交

js 模擬表單post方式提交

下面是用js動態建立form然後進行post提交的方式,引數url是表單提交的去向,引數params是給去向傳遞的引數(JSON結構),引數target設定何處開啟連結文件(可選)

[javascript] view plain copy 在CODE上檢視程式碼片派生到我的程式碼片
  1. function postcall( url, params, target){  
  2.     var tempform = document.createElement("form");  
  3.     tempform.action = url;  
  4.     tempform.method = "post";  
  5.     tempform.style.display="none"
  6.     if(target) {  
  7.         tempform.target = target;  
  8.     }  
  9.     for (var x in params) {  
  10.         var opt = document.createElement("input");  
  11.         opt.name = x;  
  12.         opt.value = params[x];  
  13.         tempform.appendChild(opt);  
  14.     }  
  15.     var opt = document.createElement("input");  
  16.     opt.type = "submit"
    ;  
  17.     tempform.appendChild(opt);  
  18.     document.body.appendChild(tempform);  
  19.     tempform.submit();  
  20.     document.body.removeChild(tempform);  
  21. }  

注意:即使js給form物件提供了submit()方法,那也不意為表單中可以不寫提交按鈕這個元素,即form表單依然需要五臟俱全才可以使用js的submit()方法進行提交。

呼叫方式:

[javascript] view plain copy 在CODE上檢視程式碼片派生到我的程式碼片
  1. postcall( 'newAnime'
    , {page_num:1,page_size:10});  
  2. 或 新增連結開啟方式:  
  3. postcall( 'newAnime', {page_num:1,page_size:10}, '_blank');