Dijeli putem


Korištenje IFRAME-a i kontrola web-resursa na obrascu

IFRAME i kontrole web-resursa ugrađuju sadržaj s druge lokacije na stranice pomoću HTML IFRAME elementa.

Napomena

Dizajni koje odaberete za obrazac koriste se i za okno za čitanje sustava Dynamics 365 for Outlook i obrasce koje koristi Dynamics 365 za tablete. Web-resursi i IFRAME elementi ne prikazuju se pomoću okna za čitanje sustava Dynamics 365 for Outlook, no podržani su u sustavu Dynamics 365 za tablete. Ako vaš IFRAME ovisi o pristupu objektu Xrm stranice ili bilo kojem rukovatelju događajima obrasca, trebali biste konfigurirati IFRAME tako da nije vidljiv prema zadanim postavkama.

IFRAME sadržaj koji se nalazi iza granice provjere autentičnosti nije podržan putem web-resursa ili okvira komponenti Power Apps. Neki ugrađeni IFRAME mogu funkcionirati u klijentu preglednika ako se korisnik izravno prijavi na vanjski servis, ali to nije podržano u aplikacijama za mobilne uređaje ili tablete. Specifični scenarij ugradnje obrasca entiteta u IFRAME, ugrađen u drugi obrazac entiteta, nije podržan.

IFRAME možete koristiti za prikaz sadržaja s druge web stranice u obrascu, na primjer, na ASP.NET stranici. Prikaz obrasca entiteta unutar IFrame ugrađenog u drugi obrazac entiteta nije podržan.

Za prikaz sadržaja web-resursa u obrascu možete koristiti jedan od sljedećih web-resursa:

Napomena

Silverlight je uključen samo za kompatibilnost s prethodnim verzijama i ne preporučuje se. Dodatne informacije:Web-resursi programa Silverlight (XAP)

U sljedećim odjeljcima opisane su mogućnosti ako želite da te kontrole prikazuju više od statičnog sadržaja.

Odaberite želite li ograničiti skriptiranje na više okvira

Koristite opciju Ograniči skriptiranje na više okvira, gdje je podržana kada ne vjerujete u potpunosti sadržaju prikazanom u IFRAME-u. Kada je odabrana ova mogućnost, IFRAME ima postavljene atribute koji su navedeni u sljedećoj tablici.

Atribut Opis
security="restricted" Taj atribut podržavaju samo verzije preglednika Internet Explorer koje nisu starije od verzije 6. Sigurnosni atribut primjenjuje korisničku sigurnosnu postavku Ograničena web-mjesta na izvornu datoteku IFRAME-a. (Postavke zone nalaze se na kartici Sigurnost u dijaloškom okviru Internetske mogućnosti .) Prema zadanim postavkama skriptiranje nije omogućeno u zoni Ograničena web-mjesta. Promjenom sigurnosnih postavki zone mogu se pojaviti različiti negativni rezultati, uključujući dopuštanje pokretanja skripti. Dodatne informacije potražite u odjeljku sigurnosni atribut.
sandbox="" Za preglednike koji podržavaju ovaj atribut, sadržaj u IFRAME-u u osnovi je ograničen samo na prikaz informacija. Mogu se primijeniti sljedeća ograničenja:

- Dodaci preglednika su onemogućeni.
- Obrasci i skripte su onemogućeni.
- Veze na druge kontekste pregledavanja su onemogućene.
- Sadržaj se tretira kao da je iz druge domene, čak i ako je domena ista.

Ovaj atribut definira W3C i podržavaju ga sljedeći preglednici:

- Internet Explorer 10, Internet Explorer 11 i Microsoft Edge
- Google Chrome
- Apple Safari
- Mozilla Firefox

Dodatne informacije o atributu memorije za testiranje potražite u sljedećim člancima:

- Kako zaštititi svoju web stranicu pomoću HTML5 Sandboxa
- Sandbox

Omogućavanje IFrame komunikacije između domena

Postoje slučajevi kada želite omogućiti komunikaciju za IFRAME koji sadrži sadržaj na drugoj domeni. Window.postMessage je metoda preglednika koja pruža tu mogućnost za verzije preglednika Internet Explorer koje nisu starije od preglednika Internet Explorer 8. Google Chrome, Mozilla Firefox i Apple Safari također ga podržavaju. Dodatne informacije o korištenju postMessagepotražite u sljedećim postovima na blogu:

Prosljeđivanje kontekstualnih informacija o zapisu

Kontekstualne informacije možete pružiti prosljeđivanjem parametara URL-u definiranom u kontroli. Stranica koja je prikazana u okviru mora moći obraditi parametre koji su joj proslijeđeni. Svi parametri u sljedećoj tablici prosljeđuju se ako je IFRAME ili web-resurs konfiguriran pomoću opcije Proslijedi kod tipa objekta zapisa i jedinstveni identifikator kao parametre .

Možete odrediti hoće li se proslijeđivati svi parametri u sljedećoj tablici.

Parametar Naziv Opis
typename Naziv entiteta Naziv entiteta.
type Oznaka vrste entiteta Cijeli broj koji jedinstveno identificira entitet u određenoj tvrtki ili ustanovi.
id GUID objekta GUID koji predstavlja zapis.
orgname Naziv tvrtke ili ustanove Jedinstveni naziv organizacije.
userlcid Korisnički jezični kod Identifikator koda jezika koji koristi trenutni korisnik.

Jezični kodovi su četveroznamenkasti ili peteroznamenkasti ID-ovi regionalnih shema. Valjane vrijednosti ID-a regionalne sheme mogu se pronaći na grafikonu ID-a regionalne sheme (LCID)).

Napomena

Predlažemo da umjesto koda vrste koristite naziv entiteta jer se kôd vrste entiteta za prilagođene entitete može razlikovati između tvrtki ili ustanova sustava Dynamics 365 Customer Engagement (on-premises).

Primjer

Sljedeći primjer prikazuje URL bez parametara.

https://myserver/mypage.aspx  

Sljedeći primjer prikazuje URL s parametrima.

https://myserver/mypage.aspx?id=%7bB2232821-A775-DF11-8DD1-00155DBA3809%7d&orglcid=1033&orgname=adventureworkscycle&type=1&typename=account&userlcid=1033  

Čitanje prošlih parametara

Proslijeđeni parametri obično se čitaju na ciljnoj stranici .aspx pomoću svojstva HttpRequest.QueryString . Na HTML stranici parametrima se može pristupiti pomoću svojstva window.location.search u JavaScriptu. Dodatne informacije potražite u članku HttpRequest.QueryString svojstvo i svojstvo pretraživanja.

Prosljeđivanje podataka obrasca

Upotrijebite metodu getValue za atribute koji sadrže podatke koje želite proslijediti drugom web-mjestu i sastavite niz argumenata niza upita koje će druga stranica moći koristiti. Zatim upotrijebite događaj Field OnChange, događaj IFRAME OnReadyStateComplete ili događaj Tab TabStateChange i metodu setSrc da biste dodali parametre src svojstvu IFRAME ili web-resursa.

Ako koristite parametar data za prosljeđivanje podataka web-resursu programa Silverlight, možete koristiti metode getData i setData da biste manipulirali vrijednošću koja se prosljeđuje putem parametra data. Za web-resurse web-stranice (HTML) koristite metodu setSrc za izravnu manipulaciju parametrom querystring .

Izbjegavajte korištenje događaja OnLoad. IFRAME i web-resursi učitavaju se asinkrono i okvir možda nije završio učitavanje prije nego što skripta događaja završi.Onload To može uzrokovati src da se svojstvo IFRAME ili web-resursa koji ste promijenili prebriše zadanom vrijednošću IFRAME ili svojstva URL-a web-resursa.

Promjena URL-a

Možda ćete htjeti promijeniti cilj IFRAME-a na temelju razmatranja kao što su podaci u obrascu ili radi li korisnik izvan mreže. Cilj IFRAME-a možete postaviti dinamički.

Napomena

Kada promijenite ciljnu stranicu za IFRAME, parametri se ne prosljeđuju automatski novom URL-u. Parametre niza upita morate dodati URL-u prije korištenja metode setSrc .

Primjer

Sljedeći primjer pokazuje kako postaviti src svojstvo za IFRAME i sve parametre pomoću događaja onChange polja skupa mogućnosti.

//Get the value of an option set attribute
var formContext = executionContext.getFormContext();
var value = formContext.getAttribute("new_pagechooser").getValue();  
var newTarget = "";  
//Set the target based on the value of the option set  
switch (value) {  
    case 100000001:  
        newTarget = https://myServer/test/pageOne.aspx;  
        break;  
    default:  
        newTarget = https://myServer/test/pageTwo.aspx;  
        break;  
}  
//Get the default URL for the IFRAME, which includes the   
// query string parameters  
var IFrame = formContext.ui.controls.get("IFRAME_test");  
var Url = IFrame.getSrc();  
// Capture the parameters  
var params = Url.substr(Url.indexOf("?"));  
//Append the parameters to the new page URL  
newTarget = newTarget + params;  
// Use the setSrc method so that the IFRAME uses the  
// new page with the existing parameters  
IFrame.setSrc(newTarget);

Razlike u izgledu između naslijeđenog web-klijenta i objedinjenog sučelja

Kontrola web-resursa konfigurirana za korištenje određenog broja redaka imat će različite visine u aplikaciji objedinjenog sučelja u usporedbi s naslijeđenom aplikacijom web-klijenta. To je zato što postoji razlika u visini retka između objedinjenog sučelja i naslijeđenog web klijenta. Ako je obrazac potreban i u naslijeđenom web-klijentu i u objedinjenom sučelju, možete koristiti različite obrasce u aplikaciji objedinjenog sučelja i naslijeđenoj aplikaciji web-klijenta s kontrolom konfiguriranom za korištenje odgovarajućeg broja redaka u svakom obrascu.

Pogledajte također

Skriptiranje klijenta u sustavu Customer Engagement pomoću JavaScripta
Korištenje JavaScripta uz Customer Engagement