读书人

表单动态平添属性的方法

发布时间: 2012-10-06 17:34:01 作者: rapoo

表单动态添加属性的方法

这两天要帮别人改一个程序,原来程序中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是表单的名字。

?

读书人网 >Web前端

热点推荐