如果数据可用,Angularjs单击行
Angularjs click row if the data is available
我是JavaScript的新手,所以我不确定什么是可能的。我使用AngularJS作为我的前端应用程序。我有一个可点击的表(行),它几乎是一个表中的表(可折叠表)
如果数据可用,我试图点击表的第一行,所以我写了这个函数
$scope.clicker = function(){
if (!$scope.first || !$scope.second){
setTimeout($scope.clicker, 500)
}
$(".clickableRow").first().click()
}
这几乎可以检查第一个和第二个值是否不为null,如果不是,则单击第一行。这有时会起作用,但几乎每次我都会收到这个错误"
Error: [$rootScope:inprog] $digest already in progress
http://errors.angularjs.org/1.4.3/$rootScope/inprog?p0=%24摘要
我不知道这意味着什么。任何帮助都会很好。
使用$q.all
,您可以在一个数组中传入多个$http
请求。您可以在q.all()
方法上使用.then
,并在它们全部完成后获得回调。
$scope.$watch(
function() {
return $route.current;
},
function(newValue) {
if (newValue) {
$scope.url = newValue.$$route.originalPath;
if($scope.url == '/loadTestForm') return;
$scope.neustaridParam = newValue.params.neustarid;
$q.all([
$http.get('/corecase/browserKPI/'+$scope.neustaridParam).success(function(response){
$scope.browserKPI = response;
}),
$http.get('/corecase/serverKPI/'+$scope.neustaridParam).success(function(response){
$scope.serverKPI = response;
}),
$http.get('/corecase/info/'+$scope.neustaridParam).success(function(response){
$scope.corecaseinfo = response;
})
]).then(function(){
$scope.selectTableRow(0, 1000); //I'd advise not hardcoding the first row's data here. You can do something like this instead: $scope.storeDataModel.storedata[0].id, scope.storeDataModel.storedata[0].storeId
});
}
}
);
如果点击事件背后的唯一目的是显示或隐藏,那么您可能会一起跳过点击事件。在tr(或任何其他想要显示的元素)中放一个"ng-show",然后简单地将一个作用域变量设置为等于引用数据的变量。如果你有数据,那么你的ng秀将是真实的,它会显示出来。这也是假设您的数据在可用之前是未定义的或空的,如果不只是将其设置为false的话。
In view:
<tr ng-show="checkData"></tr>
In controller:
$scope.checkData = data;
相关文章:
- AngularJs列表ng单击以选择选项转换
- 单击angularjs中的另一个控制器时重新加载控制器
- Angularjs - url params:单击时返回 url 中的角度变量
- ng-单击在IE中不起作用的选项选择Angularjs
- 单击事件在 iPad 中使用 Angularjs 无法正常工作
- 在 AngularJS 中单击时获取输入的位置
- 单击事件不起作用后追加 - AngularJS
- 使用AngularJS处理嵌套ng重复.无法通过ng单击来获取按钮
- 在angularJs中单击更改css类
- 当我使用 AngularJS 单击其他地方的元素时,如何更改元素上的类
- 使用 angularjs 单击一个按钮时禁用 2 个按钮
- AngularJS单击以编辑下拉列表等字段
- AngularJs 单击以切换表格中的图像按钮 src
- 如果数据可用,Angularjs单击行
- Angularjs 单击触发 2 次
- AngularJS - 单击未到达控制器方法
- 使用Javascript AngularJS单击重置该值
- angularJs:单击按钮后如何加载表格数据
- 如何使用AngularJS单击按钮时更新html页面中的值
- 当使用AngularJS单击搜索结果时,将输入重置为初始值