bootstrap的模态框中无法使用angular的赋值该怎么办?

发布于 2022-09-02 01:42:56 字数 2156 浏览 12 评论 0

在HTML中有如下的一个bootstrap模态框

<head lang="en">
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <script src="js/jquery.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/angular.min.js"></script>
    <link href="css/ui.css" rel="stylesheet">

    <title>排班</title>
    <script src="js/crew.js"></script>
</head>
<body>
<div ng-app="crew" ng-controller="ctrlcrew" class="container">
<button ng-click="show()">打开模态框</button>
<div class="modal fade" id="crewmodal" role="dialog">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close">&times;</button>
                <h4 class="modal-title">请选择员工</h4>
            </div>
            <div class="modal-body">
                在这里添加一些文本{{worker}}
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
                <button type="button" class="btn btn-primary">提交更改</button>
            </div>
        </div>
        <!-- /.modal-content -->
    </div>
    <!-- /.modal -->
</div>
</div>
</body>

然后又在crew.js文件中定义了worker变量。

var appcrew=angular.module("crew",[]);
appcrew.controller("ctrlcrew",function($scope){
    $scope.worker='李明';
    $scope.show=function(){
        $("#crewmodal").modal('show');
    };
});

但是将模态框打开后并不能显示worker变量的值。
图片描述

请问这是为什么?如何解决??

-----------------------------分割线-----------------------------
问题已经解决,蟹蟹各位,测试发现上面贴的这些代码运行起来是正常的,我的网页由于比较复杂把ngapp的定义范围搞错了。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

奢望 2022-09-09 01:42:56

模块框效果

代码完全没问题,你可能是控制器或者ngapp定义错误

心在旅行 2022-09-09 01:42:56

html里的ng-controller有吗?

最美的太阳 2022-09-09 01:42:56
appcrew.controller('ctrlcrew',['$scope',function($scope){
    $scope.worker = '李明';
}]);

还有可能是你的js文件加载顺序错了,看下控制台。


<body ng-app="appcrew">
    <div ng-controller="ctrlcrew">
        在这里添加一些文本{{worker}}
    </div>
</body>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文