搜尋

首頁  >  問答  >  主體

angular.js - AngularJS不同Ctrl動態取得文本框的值

$scope.deliveryModel = {

            "id": "delivery",
            "value": $rootScope.configInfo.queue.DelaySeconds,
            "disable": false,
            "tooltip": "值必须在0-900秒之间",
            "updateStatus": function (floatingIp) {
                if (floatingIp !== "0") {
                    this.disable = true;
                    this.value = 1;
                } else {
                    this.disable = false;
                }
            },
            "validate": [{
                "validFn": "required"
            }]
        };
        // 保留周期
        $scope.periodModel = {
            "id": "periodModel",
            "value":  $rootScope.configInfo.queue.MessageRetentionPeriod,
            "disable": false,
            "tooltip": "值必须在0-1209600秒之间",
            "updateStatus": function (floatingIp) {
                if (floatingIp !== "0") {
                    this.disable = true;
                    this.value = 1;
                } else {
                    this.disable = false;
                }
            },
            "validate": [{
                "validFn": "required"
            }]
        };
        // 最小消息大小定义
        $scope.sizeModel = {
            "id": "sizeCount",
            "value":  $rootScope.configInfo.queue.MaximumMessageSize,
            "disable": false,
            "tooltip": "值必须在0-256KB之间",
            "updateStatus": function (floatingIp) {
                if (floatingIp !== "0") {
                    this.disable = true;
                    this.value = 1;
                } else {
                    this.disable = false;
                }
            },
            "validate": [{
                "validFn": "required"
            }]
        };
        // 等待时间
        $scope.waitModel = {
            "id": "waitModel",
            "value":  $rootScope.configInfo.queue.PollingWaitSeconds,
            "disable": false,
            "tooltip": "值必须在0-20秒之间",
            "updateStatus": function (floatingIp) {
                if (floatingIp !== "0") {
                    this.disable = true;
                    this.value = 1;
                } else {
                    this.disable = false;
                }
            },
            "validate": [{
                "validFn": "required"
            }]
        };

我想在另外一個Ctrl中,動態的獲取這幾個文本框裡面的值(可能有被修改的,也可能沒被修改);
然而我現在獲取能獲取到,但是不能獲取到改變的值。

伊谢尔伦伊谢尔伦2839 天前672

全部回覆(1)我來回復

  • 黄舟

    黄舟2017-05-15 16:56:38

    你貼的這段程式碼想表達什麼,說的獲取有是什麼?
    在另外一個ctrl取得值的話可以使用:
    ctrl1

    $rootScope.$broadcast('listenChange', data);//data是传入需要监听的值

    ctrl2

    $rootScope.$on('listenChange', function(data){
      console.log(data);//这就是你从另外一个ctrl获到的值
    });

    回覆
    0
  • 取消回覆