폼 동적 속성 추가 방법

2375 단어 JavaScript
이틀 동안 다른 사람 을 도와 프로그램 을 바 꿔 야 합 니 다. 원래 프로그램 에 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 은 폼 의 이름 입 니 다.

좋은 웹페이지 즐겨찾기