表单动态添加属性的方法

这两天要帮别人改一个程序,原来程序中GET方式提交很多,现在想把GET方式改成POST方式提交,为了改动更少一点,只好添加一个空的表单,在提交时,动态把属性加到表单中。

 

<form name="menuSubmit" id="menuSubmit" action="" method="post">
  </form>
  <script language="javascript">
  	function submitPost(url){
  		intPos=url.indexOf("?");
  		if(intPos > 0){
  			document.menuSubmit.action = url.substr(0, intPos);
  			strRight=url.substr(intPos+1);
  	  		arrTmp=strRight.split("&");
  	  		for(var i=0;i<arrTmp.length;i++){   
  	  	  		arrTemp=arrTmp[i].split("=");
  	  	  	  	createInput('menuSubmit', arrTemp[0], arrTemp[1], 'hidden');
  	  	  	} 
  	  	} else {
  	  	  	document.menuSubmit.action = url;
  	  	}  
  	  		
  		document.menuSubmit.submit();
  		
  	}
  	function formSubmitPost(formName, url){  	  	
  	  	form = eval("document."+formName);
  		intPos=url.indexOf("?");  		
  		if(intPos > 0){
  			form.action = url.substr(0, intPos);
  			strRight=url.substr(intPos+1);
  	  		arrTmp=strRight.split("&");
  	  		for(var i=0;i<arrTmp.length;i++){   
  	  	  		arrTemp=arrTmp[i].split("=");
  	  	  	  	createInput(formName, arrTemp[0], arrTemp[1], 'hidden');
  	  	  	} 
  	  	} else {
  	  	  	form.action = url;
  	  	}  		
  	}
  	function createInput(formName, name, value, type){
  		form = eval("document."+formName);
  		var oinput = document.createElement("input");
  		oinput.setAttribute("value", value);
  		oinput.setAttribute("id", name);
  		oinput.setAttribute("name", name);
  		oinput.setAttribute("type", type);
  		form.appendChild(oinput);
  	}  	
  </script>

 

 这样页面跳转时,直接调用submitPost方法,把传入的参数进行分解,在动态添加到form表单中进行提交,这样比较好。

 

formSubmitPost方法,是用户在点表单提交时,原来表单的action中也有get方式,为了把action中的参数也动态添加的表单中才加此方法,formName是表单的名字。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值