이 문서의 예에서는 JS를 구현하여 페이지의 모든 컨트롤을 비활성화하는 방법을 설명합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
페이지 요소의 특성을 이용하여 모든 요소를 캡쳐할 수 있습니다.
function DisableElements(container,blnHidenButton) { if (!container) return; var aEle; if (navigator.appName =="Microsoft Internet Explorer") //IE { for (var i=0;i<container.all.length;i++) { aEle = container.all[i]; tagName = aEle.tagName.toUpperCase(); if ((tagName=="SELECT")) { aEle.disabled = true; if(tagName=="BUTTON" && blnHidenButton) { //aEle.style.display = "none";//对button不做处理 } } else if (tagName=="INPUT") { if (aEle.type.toUpperCase()!="HIDDEN") { if (aEle.type.toUpperCase()=="TEXT") { ReadonlyText(aEle); } else if (aEle.type.toUpperCase()=="BUTTON") { //do nothing; } else { aEle.disabled = true; } } if((aEle.type.toUpperCase()=="BUTTON"||aEle.type.toUpperCase()=="SUBMIT") && blnHidenButton) { //aEle.style.display = "none";//对button不处理 } } else if (tagName=="TEXTAREA") { ReadonlyText(aEle); } } } else//非IE浏览器 { var aEle = container.getElementsByTagName("select"); for (var i=0;i< aEle.length;i++) { aEle[i].disabled = true; } aEle = container.getElementsByTagName("button"); for (var i=0;i< aEle.length;i++) { aEle[i].disabled = true; } aEle = container.getElementsByTagName("textarea"); for (var i=0;i< aEle.length;i++) { ReadonlyText(aEle[i]); } aEle = container.getElementsByTagName("input"); for (var i=0;i< aEle.length;i++) { if (aEle[i].type.toUpperCase()!="HIDDEN") { if (aEle[i].type.toUpperCase()=="TEXT") { ReadonlyText(aEle[i]); } else { aEle[i].disabled = true; } } if((aEle[i].type.toUpperCase()=="BUTTON"||aEle[i].type.toUpperCase()=="SUBMIT")&&blnHidenButton) { aEle[i].style.display = "none"; } } } } function ReadonlyText(objText) { if (objText){ //objText.style.backgroundColor = "menu"; objText.style.background = "#E6E6E6"; //objText.style.color = "black"; objText.readOnly=true; } }
효과가 매우 좋습니다. 버튼을 모두 여기에 보관했습니다. 버튼을 비활성화하려면 댓글을 삭제하세요.
통화 코드:
formeditor라는 폼이 있다고 가정해 보겠습니다. 호출 방법은 다음과 같습니다.
var myForm=document.forms["formEditor"]; DisableElements(myForm,'true');
전체 예제 코드를 보려면 여기를 클릭하세요이 사이트에서 다운로드하세요.
이 기사가 JavaScript 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.