将视图(iFrame)中的值传递给angularjs中的控制器

时间:2018-05-28 04:09:22

标签: angularjs iframe

我在将值从范围传递给控制器​​时遇到了问题。

ResourceManagementCtrl控制器

我在这里得到一张显示局部视图的mdDialog

$scope.view = function (data) {
        $mdDialog.show({
            locals: { dataToPass: data },
            clickOutsideToClose: true,
            templateUrl: '/ResourceManagement/viewres',
            controller: 'ViewingResCtrl',
            fullscreen: true
        }).then(function (data) {
        });
    }

ViewingResCtrl控制器

$scope.data = dataToPass;
$scope.currPage = 0;
$scope.url = "/ViewerJS/#../Uploads/" + $scope.data.filename;
$scope.$watch('currPage', function (newval, oldval) {
   console.log(newval, oldval);
});

viewres.cshtml

这是我的模板。

@{
    Layout = null;
}
<md-dialog aria-label="Uploading" flex="50" md-whiteframe="10">
    <md-toolbar>
        <div class="md-toolbar-tools dark-primary-color">
            <h2>{{data.title}}</h2>
        </div>
    </md-toolbar>
    <md-dialog-content>
        <div layout="column" layout-align="center center" style="overflow:hidden!important;">

            <iframe ng-src="{{url}}" allowfullscreen webkitallowfullscreen height="500" width="700" id="viewId"></iframe> 
            <input type="text" ng-model="totalPages" id="totalPages">
            <input type="text" ng-model="currPage" id="getpage">
        </div>

    </md-dialog-content>

</md-dialog>
<script>
        function getPage(p) {
            document.getElementById('getpage').value = p;
        }
        function getTotalPage(p) {
            document.getElementById('totalPages').value = p;

        }
</script>

我曾经把我的函数getPagegetTotalPage放在这里,因为每当我把它ViewingResCtrl放进去它总会返回错误但是当我把我的函数放在我的视图中时一切正常但是我的问题是我的模型currPage每当我点击我的viewerjs iframe中的下一页时都无法更新。 DOM正在更新,但我的控制器中的值永远不会更新,即使我在$ watch

中监控它

0 个答案:

没有答案