Javascript 按钮在表格中不起作用?
我有一个在表格中有按钮的应用程序。单击的按钮理论上应该隐藏表并更改一些数据。当按钮在桌子外面时,它可以正常工作,但在桌子里面就失败了。这是我的密码。Javascript 按钮在表格中不起作用?,javascript,html,angularjs,button,html-table,Javascript,Html,Angularjs,Button,Html Table,我有一个在表格中有按钮的应用程序。单击的按钮理论上应该隐藏表并更改一些数据。当按钮在桌子外面时,它可以正常工作,但在桌子里面就失败了。这是我的密码。 HTML: 为什么按钮不能在表中工作?该按钮包含在ng repeat指令中ng repeat创建它自己的子作用域,因此实际发生的是在名为hideAttr的子作用域上创建一个新的$scope变量并对其进行设置。两个解决方法: 在控制器中定义一个函数并调用它-Angular将查找父对象并找到方法 在ng单击中使用$parent方法:ng单击=“$pa
HTML:
为什么按钮不能在表中工作?该
按钮
包含在ng repeat
指令中ng repeat
创建它自己的子作用域,因此实际发生的是在名为hideAttr
的子作用域上创建一个新的$scope
变量并对其进行设置。两个解决方法:
ng单击中使用$parent
方法:ng单击=“$parent.hideAttr=!$parent.hideAttr”
该
按钮
包含在ng repeat
指令中ng repeat
创建它自己的子作用域,因此实际发生的是在名为hideAttr
的子作用域上创建一个新的$scope
变量并对其进行设置。两个解决方法:
ng单击中使用$parent
方法:ng单击=“$parent.hideAttr=!$parent.hideAttr”
正如@tymeJV所指出的,
ng repeat
创建了新的作用域。更改子范围上的基元值时,会创建一个隐藏父属性的副本。在控制器中,应该有一个对象,该对象具有要更改的基本属性,即
$scope.tableAttrs = { hide: false };
在ng repeat
标记中,您将使用:
<div ng-hide="tableAttrs.hide">something to hide</div>
<button ng-click="tableAttrs.hide = !tableAttrs.hide">hide</button>
要隐藏的东西
隐藏
这里有一篇博客文章解释了这一点(与表单相关,但想法相同,子作用域隐藏了原始值)正如@tymeJV指出的那样,
ng repeat
创建了新的作用域。更改子范围上的基元值时,会创建一个隐藏父属性的副本。在控制器中,应该有一个对象,该对象具有要更改的基本属性,即
$scope.tableAttrs = { hide: false };
在ng repeat
标记中,您将使用:
<div ng-hide="tableAttrs.hide">something to hide</div>
<button ng-click="tableAttrs.hide = !tableAttrs.hide">hide</button>
要隐藏的东西
隐藏
这里有一篇博客文章解释了它(与表单相关,但想法相同,子范围隐藏了原始值)当你说调用函数来绕过它时。你是说像这样的东西:纽扣Text@IanPennebaker--是的,当你说调用函数绕过它时。你是说像这样的东西:纽扣Text@IanPennebaker”“是的