Maison > interface Web > js tutoriel > le corps du texte

Comment définir l'attribut src d'une iframe à l'aide d'une variable dans AngularJS ?

Linda Hamilton
Libérer: 2024-10-21 13:58:02
original
501 Les gens l'ont consulté

How to Set an iframe's src Attribute Using a Variable in AngularJS?

Définition d'un attribut src iframe à l'aide d'une variable dans AngularJS

Problème :

Définition de l'attribut src d'une iframe à partir d'une variable dans AngularJS ne fonctionne pas, laissant l'attribut vide.

Extrait du code :

<code class="javascript">function AppCtrl($scope) {

    // ...

    $scope.setProject = function (id) {
        $scope.currentProject = $scope.projects[id];
        console.log( $scope.currentProject );

    }
}</code>
Copier après la connexion
<code class="html"><div class="col-xs-12" ng-controller="AppCtrl">

    <ul class="">
        <li ng-repeat="project in projects">
            <a ng-click="setProject(project.id)" href="">{{project.url}}</a>
        </li>
    </ul>

    <iframe  ng-src="{{trustSrc(currentProject.url)}}">
        Something wrong...
    </iframe>
</div></code>
Copier après la connexion

Solution :

Le problème réside dans la définition manquante de la fonction trustSrc dans le contrôleur. Pour définir l'attribut src à l'aide d'une variable, vous devez utiliser le service $sce d'AngularJS pour faire confiance à l'URL :

<code class="javascript">function AppCtrl($scope, $sce) {

    // ...

    $scope.setProject = function (id) {
        $scope.currentProject = $scope.projects[id];
        $scope.currentProjectUrl = $sce.trustAsResourceUrl($scope.currentProject.url);
        console.log( $scope.currentProject );
    }
}</code>
Copier après la connexion
<code class="html"><iframe  ng-src="{{currentProjectUrl}}">
    <!-- Replace the text with actual content -->
</iframe></code>
Copier après la connexion

En injectant le service $sce et en utilisant trustAsResourceUrl, vous vous assurez que l'URL est traité comme digne de confiance et peut être défini comme attribut src de l'iframe.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!