2017-08-02 90 views
0

Plunker.如何通過線上增加號線

我已經實現上述plunker,在plunker的ROWID與Alphabets.Like增加以下

會有+++和 - 在該按鈕零件。 如果我按+那麼The Rowid將從Starting Alphabet開始(A)。 如果我按++那麼以起始字母表開頭的父rowid表示(AA)。 再次如果我按++,那麼parent_Id +以起始字母開頭的意思是(AAA)。像這樣它會增加。

請訪問Plunker here.

但我想實現與數字,功能意味着

對於單,再加上它應該顯示1,對於++它應該顯示111這樣我需要實現。

你能幫我做這個功能嗎。

var newRow = { 
    "rowId": "A" 
    } 
    $scope.componentList = []; 
    $scope.componentList.push(angular.copy(newRow)); 

    $scope.addParentRow = function(rowId) { 
    var newGridRow = angular.copy(newRow); 
    var lastChar = getListOfSameLevel(rowId, true); //isParentRow 
    var parentId = rowId.length > 1 ? rowId.slice(0, rowId.length - 1) : ""; 
    newGridRow.rowId = parentId + getNextChar(lastChar); 
    $scope.componentList.push(newGridRow); 
    } 

    $scope.addChildRow = function(rowId) { 
    var newGridRow = angular.copy(newRow); 
    var lastChar = getListOfSameLevel(rowId, false); 
    if (rowId.length === lastChar.length) { 
     newGridRow.rowId = rowId + "A"; 
    } else { 
     var parentId = lastChar.length > 1 ? lastChar.slice(0, lastChar.length - 1) : ""; 
     newGridRow.rowId = parentId + getNextChar(getLastChar(lastChar)); 
    } 
    $scope.componentList.push(newGridRow); 
    }; 

    var getNextChar = function(inputChar) { 
    return String.fromCharCode(inputChar.charCodeAt(0) + 1); 
    }; 

    var getLastChar = function(fullStr) { 
    return fullStr.slice(-1); 
    }; 
+1

我不確定我是否理解這個問題。具體應該改變什麼和你嘗試過什麼? – jsalonen

+0

In The plunker字體正在增加,但需要增加數字。最後字母需要用數字替換 – Murali

+0

對不起,但我還是不明白。我在Plunker中看不到任何數字,我不明白他們應該在哪裏。你有沒有嘗試過自己的東西?如果是這樣,那麼也可以添加該代碼。 – jsalonen

回答

2

您需要newRow.rowId從A改變初始值1,並在addChildRow功能像這樣從A下一個數字開始改變1

if (rowId.length === lastChar.length) { 
    newGridRow.rowId = rowId + "1"; 
} 

Here是你的闖入者號碼

+0

但是這裏給出了9之後的特殊字符,但我想繼續10 – Murali

+1

如果109之後的下一個數字是1010,那麼109上的'+'和'++'有什麼區別? – jsalonen

+0

在這種情況下rowId是109,如果我按'+'按鈕,數字應該是110.如果我按'++',那麼rowId是1091 – Murali