删除课程onclick ... angular js

时间:2018-03-10 20:24:14

标签: javascript css angularjs class

对这个有点疯狂。我已经谷歌了几个小时,但无法弄清楚......

基本上,我有一个表格,有一排单选按钮。 (数据正在通过ng-repeat进行,但它基本上只是饮料的名称,具有价格值)。例如。名称:拿铁咖啡。价格:2.00

<div class="field">
  <label class="radio" ng-repeat="drink in grindsIndex.menuDrinks" >
    <input id='drinkRadio' type="radio" ng-model="value"
         value="{{ drink.price }}" placeholder="{{ drink.name }}"
         name="name" ng-model="grindsIndex.name"
         ng-change="newValue(value)" ng-click="clickMethod()";/>
    {{ drink.name }}
  </label>
</div>

单击复选框后,我想通过删除类隐藏来显示另一行单选按钮。 (这有一个ng-repeat,另一个名称值列表,价格值被拉过来)。例如:姓名:蜂蜜,价格:0.50。

  <div id='extrasOptions' class="field hide">
    <label class="radio" ng-repeat="extra in grindsIndex.menuExtras" >
      <input type="radio" ng-model="value" value="{{ extra.price }}"
             placeholder="{{ extra.name }}" name="name"
             ng-change='newValue(value)'/ 
             ng-click="count = count + extra.price" ng-init="count=0">
      {{ extra.name }}
    </label>
  </div>

在我的相关控制器中,我试图添加一个eventlistener,onclick函数(或者我能做的任何事情),只需从第二行复选框中删除该类&#39; hide&#39;,所以他们出现了。

$scope.clickMethod = function () {
  extrasOptions.removeClass('hide');
};

但每一次,我都会收到错误..

  

app.js:33457错误:[jqLit​​e:nosel] jqLit​​e不支持通过选择器查找元素!&#34;

这几乎就像我不能使用removeClass一样,因为我的app / angular不喜欢它。

我想做的就是,当你点击第一行代码中的任何单选按钮时,会出现第二组单选按钮......

有人可以帮忙吗? Google正在展示一些复杂的选项,我是新手......

谢谢! 里纳

1 个答案:

答案 0 :(得分:1)

为什么你不使用ng-hide / ng-show

<div id='extrasOptions' ng-show="foo" class="field">
    <label class="radio" ng-repeat="extra in grindsIndex.menuExtras" >
    <input type="radio" ng-model="value" value="{{ extra.price }}" placeholder="{{ extra.name }}" name="name" ng-change='newValue(value)'/ ng-click="count = count + extra.price" ng-init="count=0">{{ extra.name }}
    </label>
  </div>

如果footrue,则会显示div,如果foofalse则不会。

$scope.clickMethod = function () {
    foo = true
};

Ofc你也可以使用FirstRadioButton的值。