Window.showmodaldialog의 기본 사용법에 대해 이야기합시다
showmodaldialog () (예 : 4+ 지원)
showmodelessDialog () (예 : 5+ 지원)
Window.showmodaldialog () 메소드는 HTML 컨텐츠를 표시하는 모듈 식 대화 상자를 만드는 데 사용됩니다.
window.showModelessDialog () 메소드는 HTML 컨텐츠를 표시하는 비 모달 대화 상자를 만드는 데 사용됩니다.
사용 방법 :
vreturnvalue = window.showmodaldialog (surl [, varguments] [, sfeatures])))
vreturnvalue = window.showmodelessDialog (surl [, varguments] [, sfeatures])))))
매개 변수 설명 :
Surl-Must-Choose 매개 변수, 유형 : String. URL은 대화 상자에 표시 할 문서를 지정하는 데 사용되었습니다.
varguments-optional parameter, type : variant. 대화 상자에 매개 변수를 전달하는 데 사용됩니다. 배열 등을 포함하여 통과하는 매개 변수 유형은 제한되지 않습니다. 대화 상자는 Window.dialogarguments를 통해 전달되는 매개 변수를 얻습니다.
sfeatures-optional parameter, type : string. 대화 상자의 외관 및 기타 정보를 설명하는 데 사용되며 아래에서 하나 이상을 사용하고 분리 할 수 있습니다. "
1. DINGHEIGHT : IE4의 100px 이상의 대화 상자 높이, IE4의 DialogHeight 및 Dialogwidth는 EM이고 IE5는 PX이며 모달 대화 상자에 편리합니다.
2. Dialogwidth : 대화 상자 너비.
3.dialogleft : 화면 왼쪽에서 거리.
4. DIALOGTOP : 화면에서의 거리.
5. 센터 : {예 |.
6. help : {예 |.
7. {예 |. 기본 번호.
8. Status : {예 |. 기본값은 예 [modeless] 또는 아니오 [modal]입니다.
9. Scroll : {예 | 0 |. 기본값은 예입니다.
다음 속성은 HTA에서 사용되며 일반적으로 일반 웹 페이지에서는 사용되지 않습니다.
10. Dialoghide : {예 : 0 |. 기본값은 아니오입니다.
11. Edge : {Sunken |.} : 대화 상자의 테두리 스타일을 나타냅니다. 기본값은 인상됩니다.
12. {예 | 0 |.
매개 변수 전송 :
1. 대화 상자에서 매개 변수를 전달하려면 varguments를 통과 할 수 있습니다. 문자열 유형의 경우 유형은 제한되지 않습니다. 최대 값은 4096 자입니다. 다음과 같은 개체를 전달할 수도 있습니다.
다음과 같이 코드 코드를 복사하십시오.
<cript>
var obj = new Object ();
obj.name = "ttop";
Window.showmodaldialog ( "test.htm", obj, "dialogwidth = 200px; dialogheight = 100px");
</스크립트>
test.htm
<cript>
var obj = window.dialogarguments
ALERT ( "전달한 매개 변수는 다음과 같습니다." + obj.name)
</스크립트>
2. Window를 통해 대화 상자를 엽니 다. 물론 객체가 될 수있다. 예를 들어:
다음과 같이 코드 코드를 복사하십시오.
<cript>
str = wind
경고 (str);
</스크립트>
test.htm
<cript>
window.returnValue = "/";
</스크립트>
1. Showmodaldialog와 ShowmodeelessDialog의 차이점은 무엇입니까?
Showmodaldialog : 개장 한 후에는 항상 입력 초점을 유지합니다. 대화 상자가 닫히지 않으면 사용자는 기본 창으로 전환 할 수 없습니다. 경고의 작동 효과와 유사합니다.
showmodelessDialog : 열린 후 사용자는 입력 초점을 무작위로 전환 할 수 있습니다. 메인 창에 영향을 미치지 않습니다 (대부분 차단됩니다. : P)
둘째, Showmodaldialog 및 ShowmodelessDialog에서 어떻게 새로운 창을 튀어 나오게 할 수 있습니까?
열린 웹 페이지에 <base target = "_ seld">를 추가하십시오. 이 문장은 일반적으로 <html>과 <body> 사이에 배치됩니다.
Showmodaldialog 및 ShowmodelessDialog의 내용을 새로 고치는 방법은 무엇입니까?
Showmodaldialog 및 ShowmodelessDialog에서는 F5를 새로 고칠 수 없으며 메뉴를 팝업 할 수 없습니다. 이것은 JavaScript에만 의존 할 수 있습니다.
<body onkeydown = "if (event.keyCode == 116) {regoad.click ()}">
<a id = "Reload"href = "filename.htm"style = "display : none"> Reload ... </a>
filename.htm을 웹 페이지의 이름으로 바꾸고 열린 웹 페이지에 눌러 <base target = "_ seld">를 사용해야합니다.
넷째, JavaScript와 함께 Showmodaldialog (또는 ShowmodeelessDialog)의 창을 닫는 방법.
<input type = "button"value = "close"onclick = "window.close ()">
또한 <base target = "_ seld">와 협력하면 새 IE 창이 열린 다음 꺼집니다.
5. Showmodaldialog 및 ShowmodeelessDialog 데이터 전송 기술.
(저자의 말 : 나는 원래 질문과 대답으로 그것을 쓰고 싶었지만 이것을 생각할 수 없었기 때문에 이것을해야했습니다.)
이 일은 더 번거 롭습니다. 나는 그것을 여러 번 바꿨습니다.
예 : 이제 변수 var_name을 읽거나 설정해야합니다.
일반 전송 방법 :
Window.showmodaldialog ( "filename.htm", var_name)
// var_name 변수를 전송합니다
showmodaldialicalog (또는 showmodeelessDialog)에서 읽고 설정할 때 ::
alert (window.dialogarguments) // var_name 변수를 읽습니다
window.dialogarguments = "Oyiboy"// var_name 변수를 설정합니다
이 방법은 충족 될 수 있지만 언제 Var_Name을 작동하고 동시에 두 번째 변경 VAR_ID를 작동 하시겠습니까? 더 이상 작동 할 수 없습니다. 이것이이 전송 방법의 한계입니다.
다음은 내가 사용 권장하는 방법입니다.
Window.showmodaldialog ( "Filename.htm", Window)
// 작동 할 변수에 관계없이 기본 창의 창 객체 만 직접 전송됩니다.
showmodaldialicalog (또는 showmodeelessDialog)에서 읽고 설정할 때 ::
alert (window.dialogarguments.var_name) // var_name 변수를 읽습니다
Window.dialogarguments.var_name = "Oyiboy"// var_name 변수를 설정합니다
동시에 var_id 변수도 작동 할 수도 있습니다.
alert (window.dialogarguments.var_id) // var_id 변수를 읽습니다
window.dialogarguments.var_id = "001"// var_id 변수를 설정합니다
또한 형태 객체의 요소와 같은 기본 창의 객체를 작동 할 수 있습니다.
window.dialogarguments.form1.index1.value = "이것은 index1 요소의 값입니다"
부모 페이지에서 onclight = "" "varite = wind ) {form.textname.value = Reval;} "Style =" "Cursor : Hand"> 여기를 클릭하여 그림을 수정하십시오.
Wind Window 'ChangePhoto.htm'에서 설정된 프레임 워크를 엽니 다.
changephoto.htm : <input type = button onclick = "onclose ();" "close">>
function onclose () {wind
ASP 파일 : parent.document.form1.save.value = "값 또는 다양한";