iT邦幫忙

0

angularjs 新手 關於INPUT輸入數值的問題

  • 分享至 

  • twitterImage

我有個輸入框,並做出兩個按紐(+)和(-), 讓輸入框的數字分別做+1跟-1的動作。目前都沒問題。
但是在使用者自己點輸入框,手動輸入數字後。點選+或-。輸入框的數字就不會再跟著跳動。
已經卡了兩天,不知道問題是出在哪?以下是簡化過的JS跟HTML。能否教我問題出在哪?謝謝

$scope.plus = function () {
        $scope.quantity = $scope.quantity * 1 + 1;
    }
$scope.minus = function () {
        $scope.quantity = $scope.quantity * 1 - 1;
    }
$scope.change_quantity = function (num) {
        if(num > 0){
            $scope.quantity=num; 
            }
    }

------html-----
<input ng-model="quantity" 
       ng-change='change_quantity(quantity,{{quantity}})' >
<a ng-click="plus()"></a>
<a ng-click="minus()"></a>
看更多先前的討論...收起先前的討論...
newkevin iT邦高手 1 級 ‧ 2016-10-18 17:26:23 檢舉
按+-之前 沒去抓目前的數值
或手動輸入 沒存入
這2個方向
其實原本 $scope.quantity在手到輸入時,值是不會變動的。所以我多寫了一個change_quantity把值帶到$scope.quantity

目前3個FUNCTION 使用ALERT把值丟出來看,確定$scope.quantity值都會變。問題是HTML INPUT內的值不會跟著變化。

我程度不高,以我的理解$scope.quantity不是跟ng-model="quantity"綁在一起了嗎?有什麼理由會使的兩邊的值不同步
kgame iT邦新手 4 級 ‧ 2016-10-19 05:11:39 檢舉
這是angular的老bug,更新angular到1.5.8看看
嗯 我最後發現是使用ONSES UI 的問題 目前已經解決 感謝
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答