我正在尝试创建类似于电子表格的空表单。
以下是我的控制器代码。
var myApp=angular.module('myApp',[]);
myApp.controller('sheet', ['$scope','$timeout', function($scope,$parse){
$scope.columns = ['A', 'B', 'C', 'D','E'];
$scope.rows = [1, 2, 3, 4];
$scope.cells = {};
process = function(exp) {
return exp.replace(/[A-Z]\d+/, function(ref) {
return 'compute("' + ref + '")';
})
}
$scope.compute = function(cell) {
return $parse(process($scope.cells[cell]))($scope);
};
}]);
myApp.directive('focusMe', function($timeout) {
return {
scope: { trigger: '=focusMe' },
link: function(scope, element) {
scope.$watch('trigger', function(value) {
if(value === true) {
//console.log('trigger',value);
//$timeout(function() {
element[0].focus();
scope.trigger = false;
//});
}
});
}
};
});
是否可以为列和行传递范围值,以便生成类似A-Z的网格,然后是AA-AZ,然后是BA-BZ直到ZZ。一直到10000行。
目前它能够生成网格,如图所示。