0
我有文本區域的ng-repeat
,其中我將文本保存在數組中的對象內。我需要的是當我按Enter
我們創建新的textarea移動焦點新的它,而不是在以前的textarea添加新行。所以我有這樣的東西。從textarea中的ng-model變量中刪除newLine
//Javascript
$scope.texts = [{}];
var addNewLine = function(index){
var newObj = {};
// NEXT LINE IS NOT WORKING
$scope.texts[index].text=$scope.texts[index].text.replace(/\n|\r|\r\n|\n\r/g, '');
$scope.texts.splice(index+1, 0, newObj);
$scope.selected = newObj;
}
var removeLine = function(index){
if(!$scope.texts[index].text||$scope.texts[index].length==0){
$scope.texts.splice(index, 1);
if(index==0) $scope.selected = $scope.texts[1];
else $scope.selected = $scope.texts[index-1];
}
}
$scope.checkPress = function(event, index){
if(event.keyCode == 13) addNewLine(index);
else if(event.keyCode == 8) removeLine(index);
}
//HTML
<textarea ng-repeat="textObj in texts"
ng-model="textObj.text" ng-keyup="checkPress($event, $index)"
focus-if="selected.$$hashKey == textObj.$$hashKey"
ng-click="selected=textObj"></textarea>
哪裏重點 - 如果我使用THIS PLUGIN。當我添加新的textarea
時,如何從以前的textarea
中刪除newLine?
如果你只想捕捉一行數據,你爲什麼要用'textarea'而不是'input'?另外,你並沒有在這裏問過一個問題。有沒有與你的代碼工作? – Claies
我需要textarea,當容器的寬度不夠時,輸入不是兩行。問題是爲什麼替換不起作用,爲什麼它不刪除最後一個空行。 –