【问题标题】:Show message in html when successed add user with angularjs+codeigniter使用 angularjs+codeigniter 成功添加用户时在 html 中显示消息
【发布时间】:2015-10-28 15:11:30
【问题描述】:

我在我的应用程序中使用 codeigniter 和 angularjs。当我以角度形式添加新人时,如果插入人成功/失败,我将从 codeigniter 控制器收到消息。角度控制器的代码块:

request.success(function (data) {
    $scope.patientForm.$setPristine();
    $rootScope.message = data; //0 - ok, 1-fail
    if($scope.message)
        // some code
});

如何在$scope.message = 0 时在html 中显示divp 中的信息并在一段时间后隐藏此消息? 我知道我必须使用 ng-show 但我不知道如何。

【问题讨论】:

    标签: javascript html angularjs codeigniter


    【解决方案1】:

    你可以这样使用 ng-show :

    <p ng-show="!message">Information text</p>
    

    ng-show 中的表达式为真时,它会显示p 元素。在这种情况下,它将显示message 何时为假。所以当$scope.message的值设置为0时,p元素就会显示出来。

    要在一段时间后隐藏消息,您可以使用 $timeout 角度服务,如下所示:

    $timeout(function () {
        $scope.message = newvalue;
    }, 3000);
    

    这将在 3000 毫秒后更改 $scope.message 的值。

    如果您使用 $timeout,请不要忘记将其注入您的控制器中。

    【讨论】:

    • 谢谢!我期待这样的回应!
    【解决方案2】:

    你只需要在 HTML 代码中使用 ng-show,例如:

    <div ng-show="message == 0"> your information here</div>
    

    【讨论】:

    • 你能解释一下这个解决方案为什么/如何工作,或者提供一个参考,提问者可以在哪里查找它?
    • 好的,它的工作;)。如何在特定时间显示这个?显示弹出 div 并在 5 秒内隐藏它?
    • 这里是官方 angularJS 文档的链接:docs.angularjs.org/api/ng/directive/ngIf 要在 5 秒后隐藏它,您可以使用 $timeout :docs.angularjs.org/api/ng/service/$timeout
    猜你喜欢
    • 1970-01-01
    • 2018-01-27
    • 1970-01-01
    • 2016-12-27
    • 2020-10-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-27
    • 1970-01-01
    相关资源
    最近更新 更多