J'ai un formulaire HTML ( upload.htm ) avec un contrôle de téléchargement de fichier HTML à l'intérieur.
<form id="frmupload" name="upload" enctype="multipart/form-data" action="uploadhandler.ashx" method="post">
<input id="uploader" name="uploadctrl" type="file"/>
</form>
Il existe également une méthode JavaScript dans la page ci-dessus qui se présente comme suit :
function performUpload(){
document.getElementById('frmupload').submit();
}
J'appelle cela à l'intérieur d'une page ( uploadpage.htm ) à partir d'un iframe
:
<iframe id="docframe" src="upload.htm" style="display:none"></iframe>
J'essaie d'exécuter l'instruction ci-dessous à partir de l'interface de l'utilisateur. uploadpage.htm page :
var i = document.getElementById('docframe');
i.contentWindow.performUpload();
Je reçois une erreur disant L'accès est refusé et mon débogueur s'arrête à la première fonction JavaScript que j'ai montrée. Les deux fichiers se trouvent au même endroit dans le projet Web. Ils ont également le même nom de domaine. Pourquoi est-ce que je reçois cette erreur alors ?
Bien sûr, auparavant, je pouvais afficher la page : lorsque je n'avais pas défini le paramètre name
pour le contrôle de téléchargement HTML. Mais après avoir défini l'attribut name dans le balisage HTML, j'obtiens cette erreur bizarre. Pourquoi n'ai-je pas eu cette erreur la première fois ?
J'ai regardé ce message --> "Access is denied" lorsque script tente d'accéder à l'iframe dans IE8 mais ça n'a pas aidé.