Jendela Ayah:
Salin kode kode sebagai berikut:
<Html>
<head>
<iteme> halaman non -title </iteme>
<bahasa skrip = "javascript" type = "text/javascript">
Fungsi opendialog1 ()
{{
Var somevalue = widow.showmodaldialog ("b.html", "", "dialogWidth = 500px; dialogHeight = 500px; status = tidak; bantuan = tidak; scrollbars = tidak");
document.form1.p1t.value = somevalue;
}
</script>
</head>
<body>
<Form name = "form1" action = "#">
<input type = "text" name = "p1t">
<input type = "Tombol" value = "Buka kotak dialog" OnClick = "OpenDialog1 ()">
</form>
</body>
</html>
Sub -Window:
Salin kode kode sebagai berikut:
<Html>
<head>
<iteme> halaman non -title </iteme>
<bahasa skrip = "javascript" type = "text/javascript">
Fungsi A ()
{{
var wname = document.form1.
Parent.window.ReturnValue = WNAME; // Jendela induk adalah halaman sebelumnya
window.close ();
}
</script>
</head>
<body>
<Form name = "form1" action = "" >>
<input type = "text" value = "Masukkan nilai untuk melewati" name = "backname" >>
<input type = "tombol" value = "pass" onclick = "return a ()">
</form>
</body>
</html>
---- 1. Tata bahasa dasar
---- Objek Window memiliki metode yang disebut showmodaldialog.
<Tombol onClick = "window.showmodaldialog
('dialog.htm') "> Cari </button>
---- Sistem akan membuka halaman dialog.htm di jendela baru dan menunggu pengguna untuk merespons.
---- Atur properti ReturnValue dari objek jendela dalam dialog.htm untuk memungkinkan halaman beranda mendapatkan nilai pengembalian. Misalnya, tulis di atas tombol yang ditentukan dari halaman:
Window.ReturnValue = Window.
document.all.itpeoplid.value
---- memberdayakan nilai kotak input Iptpeopleid ke properti ReturnValue dari objek jendela. Nilai ini dapat diperoleh di beranda:
var str = showmodaldialog ("dialog1.htm")
---- 2. Lewati nilai inisialisasi
---- Jika Anda ingin memberikan nilai awal ke halaman modal, Anda dapat menggunakan pernyataan berikut di beranda:
var csearchValue = showmodaldialog
('dialog.htm', 'abc')
Gunakan window.dialogarguments dalam dialog.htm
Atribut bisa mendapatkan 'ABC'. Misalnya:
<Script for = window event = pengetahuan = "jscript">
if (window.dialogarguments! = null)
Window.document.all.iptpeoplid.value = window.dialogarguments;
</script>
---- 3. Lewati beberapa nilai
---- Jika Anda ingin meneruskan beberapa parameter ke halaman modal, Anda dapat mendefinisikan objek di beranda,
fungsi myDialog () {
Var str1;
Var str2;
}
---- Tampilkan target sebelum menampilkan halaman modular, lalu hubungi metode showmodaldialog.
Fungsi selamat datang (inistr1, inistr2) {{{{{{{{
myDialog.str1 = inistr1;
myDialog.str2 = inistr2;
ifmodaldialog ("dialog2.htm", myDialog)
== false) //
... ...
---- Di halaman model, Anda dapat menggunakan kode ini
window.document.all.iptid.value =
Window.dialogarguments.str1
Mengutip nilai, atau menggunakan kode ini untuk menetapkan nilai
Window.dialogarguments.str1 =
window.document.all.iptid.value
---- Rutinitas lengkap adalah sebagai berikut:
---- Untuk hanya satu parameter, lihat: Main1.htm dan dialog1.htm.
---- Untuk situasi melewati beberapa parameter, lihat: main2.htm dan dialog2.htm.
Jendela Ayah:
Nilai pengembalian redup xxx
Parameter redup yyy diteruskan ke jendela anak
var xxx = showmodaldialog ('xxx.asp', 'yyy', 'dialogwidth: 100px; dialogHeight = 290px; Status: no')
Sub -Window:
Parameter redup yyy dari jendela ayah
Parameter redup xxx dari jendela ayah
yyy = window.dialogarguments
xxx = window.ReturnValue
Penggunaan window.dialogarguments
JavaScript memiliki banyak metode -in dalam menghasilkan kotak dialog, seperti: window.alert (), window.confirm (), window.promppt (). Namun, IE menyediakan lebih banyak cara untuk mendukung kotak dialog. menyukai:
Showmodaldialog () (IE4+dukungan)
ShowmodelessDialog () (IE5+dukungan)
Metode window.showmodaldialog () digunakan untuk membuat kotak dialog modular yang menampilkan konten HTML.
Metode window.showmodelessdialog () digunakan untuk membuat kotak dialog non -modal yang menampilkan konten HTML.
Saat kami membuka jendela dengan ShowmodelessDialog (), tidak perlu menggunakan Window.close () untuk mematikannya. adalah, kotak dialog tidak selalu sama, itu adalah fokus teratas. Kotak dialog dari metode modal [IE4] selalu memiliki fokus (fokus tidak dapat dihapus sampai ditutup). Kotak dialog modal terhubung ke jendela jendelanya, jadi ketika kita membuka jendela lain, hubungan tautan mereka masih dipertahankan dan disembunyikan di bawah jendela acara.
Metode penggunaan adalah sebagai berikut:
vreturnValue = window.showmodaldialog (surl [, varguments] [, sfeatures])))
vreturnValue = window.showmodelessdialog (surl [, varguments] [, sfeatures])))))
Deskripsi Parameter:
Surl
Must -Cheose Parameter, Ketik: String. URL digunakan untuk menentukan dokumen yang akan ditampilkan di kotak dialog.
Vargumen
Parameter opsional, ketik: varian. Digunakan untuk meneruskan parameter ke kotak dialog. Jenis parameter yang dilewati tidak terbatas, termasuk array, dll. Kotak dialog memperoleh parameter yang dilewati melalui jendela.
Sfeature
Parameter opsional, ketik: String. Digunakan untuk menggambarkan penampilan dan informasi lain dari kotak dialog, Anda dapat menggunakan satu atau lebih di bawah ini, dan menggunakan segmen ";"
Tinggi kotak dialog DialogHeight, tidak kurang dari 100px, dialogheight dan dialogwidth di IE4 adalah em, dan IE5 adalah px, yang nyaman bagi metode modal untuk menggunakan px sebagai satu unit.
Dialogwidth: Lebar kotak dialog.
Dialogleft: Jarak dari kiri desktop.
Dialogtop: Jarak dari desktop.
Center: {Ya |
Bantuan: {Ya |
UNDANGNYA: {Ya | No default.
Status: {Ya | Standarnya adalah ya [tanpa modal] atau tidak [modal].
Gulungan: Ya | Standarnya adalah ya.
Ada beberapa atribut yang digunakan dalam HTA, yang umumnya tidak digunakan di halaman web umum.
Dialoghide: {Ya | Standarnya adalah tidak.
Edge: {Sunken |. Defaultnya dinaikkan.
Unjovel: {Ya |
Parameter lulus:
Jika Anda ingin melewati parameter kotak dialog, itu dilewatkan melalui vargumen. Jenisnya tidak terbatas. Anda juga dapat meneruskan objek, seperti:
test1.htm
===================
<script>
varmxh1 = newarray ("mxh", "net_lover", "mesencius e chapter")
varmxh2 = window.open ("tentang: blank", "window_mxh")
// Kirim array ke kotak dialog
Window.showmodaldialog ("test2.htm", mxh1)
// mengirimkan objek jendela ke kotak dialog
Window.showmodaldialog ("test3.htm", mxh2)
</script>
test2.htm
===================
<script>
Vara = window.dialogarguments
peringatan ("Parameter yang Anda lewati adalah:"+a)
</script>
test3.htm
===================
<script>
Vara = window.dialogarguments
Peringatan ("Parameter yang Anda lewati adalah objek jendela, nama:"+a.name)
</script>
Anda dapat mengembalikan informasi ke jendela kotak dialog melalui Window.ReturnValue, tentu saja, itu juga bisa menjadi objek. Misalnya:
test4.htm
===================
<script>
Vara = window.showmodaldialog ("test5.htm")
untuk (i = 0; i <a.length; i ++) waspada (a [i])
</script>
test5.htm
===================
<script>
FunctionsEndTo ()
{{
Vara = newaray ("a", "b")
Window.ReturnValue = a
window.close ()
}
</script>
<body>
<sorm>
<inputValue = "type = buttononClick =" sendTo () ">
</form>
Masalah Umum:
1. Bagaimana cara mengirimkannya di kotak dialog modal tanpa membuka jendela baru?
Jika browser Anda adalah IE5.5+, Anda dapat menggunakan iframe dengan atribut nama di kotak dialog, dan Anda dapat merumuskan nama target ke iframe pada saat pengiriman. Untuk IE4+, Anda dapat menggunakan ketinggian 0 ke bingkai: contoh,
test6.htm
===================
<script>
Window.showmodaldialog ("test7.htm")
</script>
test7.htm
===================
if (window.location.search) alert (window.location.search)
<framesetrows = "0,*">
<framesrc = "About: blank">
<framesrc = "test8.htm">
</fameset>
test8.htm
===================
<FormTarget = "_ self" Method = "get">
<inputName = txtValue = "test">
<inputType = Submit>
</form>
<script>
if (window.location.search) alert (window.location.search)
</script>
2. Dapatkah saya meneruskan parameter langsung ke kotak dialog melalui http: //servername/virtualdirname/test.htm?
Jawabannya tidak. Tapi itu mungkin dalam bingkai.