linkedin facebook linkedin facebook nod32

Hujjatni dinamik ravishda yaratish

Muallif: Mengliyev Sh.

Qo`shilgan sana: 2015-03-27

Hujjatni dinamik ravishda yaratish.

Endi biz dokumentlarni dinamik ravishda yaratish kabi JavaScript ning ajoyib imkoniyatini ko’rib chiqishga tayyormiz. Yani JavaScriptda tuzilgan skript ning o’ziga yangi HTML-sahifalarni yaratishga ruhsat berish mumkin. Bundan tashqari shu yul bilan webning VRML-ko’rinishlar va h. kabi boshqa dokumentlarini ham yaratish mumkin. Qulaylik uchun bu dokumentlarni alohida oyna yoki freimga joylashtirish mumkin.
Avval biz oddiy HTML-dokument yaratamiz va uni yangi oynada namoyish qilamiz.
Quyidagi skriptni ko’ramiz.
<html>
<head>
<script language="JavaScript">
<!-- hide
function openWin3() {
myWin= open("", "displayWindow",
"width=500,height=400,status=yes,toolbar=yes,menubar=yes");
// keyinchalik bosib chiqarish uchun document ob’ektini ochish
myWin.document.open();
// yangi dokumentni ochish
myWin.document.write("<html><head><title>Тест");
myWin.document.write("</title></head><body>");
myWin.document.write("<center><font size=+3>");
myWin.document.write(" HTML-Hujjatni ochish");
myWin.document.write(" JavaScript yordamida amalga oshirish 500X400!");
myWin.document.write("</font></center>");
myWin.document.write("</body></html>");
// dokumentni yopish - (lekin oynani emas!)
myWin.document.close(); 
}
// -->
</script>
</head>
<body>
<form>
<input type=button value="Ochish" onClick="openWin3()">
</form>
</body>

</html>

Keling winOpen3() funktsiaysini ko’rib chiqaylik. Aniqki, biz avval brauzerning yangi oynasini ochamiz. Open() funktsiaysining birinchi argumenti – bo’sh satr (“”), bu esa shuni bildiradiki, biz bu holatda aniq bir URL adresini ko’rsatishni hohlamaymiz. Brauzer faqatgina mavjud dokumentni qayta ishlamasligi kerak – JavaScript qo’shimcha yangi dokument yaratishi kerak.
Skriptda biz yangi myWin o’zgaruvchini aniqlaymiz. Va uning yordamida biz yangi oynaga kirib bora olamiz. Shunga e’tibor beringki, bu holda bu maqsad uchun oyna nomi (displayWindow) dan foydalana olmaymiz.
Yangi oynani ochganimizdan keyin, document ob’ektini yozish uchun navbat keladi. Bu quyidagi komanda yordamida amalga oshiriladi:
  // keyinchalik bosmaga chiqarish uchun document ob’ektini ochish
  myWin.document.open();
Bu yerda biz open()ga- document ob’ektining metodiga murojaat qilamiz. Lekin u window ob’ektining open() metodi bilan bir hil narsa emas! Bu komanda yangi oyna ochmaydi – u bosib chiqarish uchun documentni tayorlaydi. Bundan tashqari biz document.open() ning oldiga myWin ni yangi oynaga yozish imkoniyatini olish maqsadida qo’yishimiz kerak.
Skriptning keyingi satrlarida document.write() ni chaqirish yordamida yangi dokumentning matni hosil qilinadi:

  // yangi dokumentni hosil qilish
myWin.document.write("<html><head><title>On-the-fly");
myWin.document.write("</title></head><body>");
myWin.document.write("<center><font size=+3>");
myWin.document.write("HTML-Hujjatni ochish ");
myWin.document.write("JavaScript yordamida amalga oshirish 500X400!");
myWin.document.write("</font></center>");
myWin.document.write("</body></html>");

Ko’rinib turibdiki, biz dokumentga HTML tilining oddiy teglarini yozamiz. Yani amalda biz HTML bo’laklarini hosil qilamiz! Bunda HTML teglarining istalganidan foydalanish mumkin.
Buni yakunlagandan keyin biz dokumentni yana yopishimiz kerak. Bu quyidagi komanda orqali amalga oshiriladi:
// dokumentni yopish - (oynani emas!)
myWin.document.close(); 
Nafaqat dokumentlarni dinamik ravishda yaratish mumkin, balki ularni o’z hohishicha u yoki bu freimlarga joylashtirish ham mumkin. Masalan, frame1 va frame2 nomli ikki framega ega bo’lsak va frame2 ga yangi dokumentni hosil qilish kerak bo’lsa, u holda frame1ga quyidagini yozib qo’yish yetarli:

parent.frame2.document.open();
parent.frame2.document.write(" HTML-kodni shu erda ochish");
parent.frame2.document.close();

1453 marta o`qildi.

Parol:
Eslab qolish.


Ro`yhatdan o`tish

testing

+998915878681

Siz o`z maxsulotingizni 3D reklama ko`rinishda bo`lishini xohlaysizmi? Unda xamkorlik qilamiz.

3D Reklama


Рейтинг@Mail.ru
Рейтинг@Mail.ru

Besucherzahler
счетчик посещений