js模擬form表單提交數據, js模擬a標簽點擊跳轉,避開使用window.open引起來的瀏覽器阻止問題


js模擬form表單提交數據, js模擬a標簽點擊跳轉,避開使用window.open引起來的瀏覽器阻止問題

js模擬form表單提交數據源碼:

/** 
* js模擬form表單提交  
* @param {object} 參數對象
*    url       必填  提交地址
*    methond   選填  默認post  提交方式  post  get
*    target    選填  默認_self  當前頁面還是新頁面   _self _blank
*              其它參數
*/
function jsFormSubmit(params) {
  var turnForm = document.createElement("form");
  //一定要加入到body中!!
  document.body.appendChild(turnForm);

      var method = params['methond'] || "POST";	//默認為post
  turnForm.method = method;
  delete params['methond'];

  var target = params['target'] || "_self";	//默認為當前頁面
  turnForm.target = target;
  delete params['target'];

  var url = params.url; //提交地址
  turnForm.action = url;
  delete params['url'];


  //創建隱藏表單
  for(var item in params){
    var newElement = document.createElement("input");
    newElement.setAttribute("type","hidden");
    newElement.setAttribute("name",item);
    newElement.setAttribute("value",params[item]);
    turnForm.appendChild(newElement);
  }

  turnForm.submit();
}

js模擬form表單提交使用示例:

var params = {
    //必填參數
    "url":url,
    "methond":"post",
    "target":"_blank",
    //下邊為要提交的數據
    "j_username":"SYNKMXS0000000043",
    "j_password":"3258"
}                  
formSubmit(params);

js模擬a點擊源碼:

/** 
* js模擬a點擊
* @param {string}  url       必填  提交地址
* @param {string}  target    選填  默認_self  當前頁面還是新頁面   _self _blank
*/
function jsALink(url,target) {
  var target = target || "_blank";
  //先讀取alink 不存在則創建
  var alink = document.getElementById("alink");
  if(alink==undefined)  alink=document.createElement("a");
  //賦值
  alink.id = "alink";
  alink.href = url;
  alink.target = target;
  alink.style = "display: none;";
  //寫入頁面
  document.body.appendChild(alink);
  //執行點擊事件
  document.getElementById("alink").click();
}  

js模擬a點擊示例:

jsALink("http://www.jsfun.cn","_blank");

來源:jsfun.cn


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM