无法在angular.js中将选定的选项卡值获取到控制器

时间:2018-08-14 07:09:53

标签: javascript html angularjs

在html A中,我正在调用html B,其中包含如图所示的选项卡。现在,“保存”和“全部保存”按钮位于html B中,我已经使用css移至顶部,但这不是正确的方法。我需要HTML A中的“保存”和“全部保存”按钮,但是为此,我需要知道选择了哪个选项卡。

HTML B

 <div id="confi">
      <div class="row">
        <section widget-grid id="widget-grid">
          <div class="col col-md-12">
            <div ng-if="currComp" jarvis-widget id="script-widget" data-widget-color="darken" data-widget-colorbutton="false" data-widget-editbutton="false"
              data-widget-deletebutton="false">
              <header>
                <span class="widget-icon">
                  <i class="fa fa-gear"></i>
                </span>
                <h2>Script Configuration for {{comp}}</h2>
              </header>
              <div class="widget-body padding-10">
                <ul id="scriptTabs" class="nav nav-tabs bordered">
                  <li ng-repeat="s in scripts track by $index">
                    <a id="s{{$index}}tab" href="#s{{$index}}" data-toggle="tab">
                      <i class="fa fa-fw fa-lg fa-file"></i> {{s}}
                      <!-- <span class="badge bg-color-blue txt-color-white">6</span> -->
                    </a>
                  </li>
                </ul>
                <!-- style="height:400px;margin-bottom: 30px;" -->
                <div id="scriptTabsContent" class="tab-content padding-10">
                  <div class="tab-pane active" id="s{{$index}}" ng-repeat="s in scripts track by $index">
                    <div style="height:753px;width: 100%;">
                      <div id="{{ s }}" style="height:100%;width: 100%"></div>
                      <div style=" position: absolute;margin-top:  -910px;right: 0px;">
                          <button class="btn btn-sm btn-primary pull-right" style="margin-top: 20px;" ng-click="save(s)">Save</button>
                          <button class="btn btn-sm btn-primary pull-right" style="margin-top: 20px;margin-right: 20px;" ng-click="saveAll('all')">Save All</button>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </section>
      </div>

enter image description here 目前,我在TabsContent中使用按钮,以便我可以将“ s”的值传递给控制器​​B,而我继续使用ng-click,这给了我错误

<li ng-repeat="s in services track by $index" ng-click="functionInScope(s)">
        <a id="s{{$index}}tab" href="#s{{$index}}" data-toggle="tab">
          <i class="fa fa-fw fa-lg fa-file" ></i> {{s}}
        </a>
   </li>

请帮助我在不使用ng-click的情况下获得“ s”的值,以便我可以将“ s”的值发送到控制器A进行保存功能。

1 个答案:

答案 0 :(得分:0)

仅是一个建议,我们不能创建一个名为“ selectedTab”的变量,当您单击选项卡时,仅从该选项卡生成KeyUp事件,在这种情况下,您可以更改此变量的值,而在发布时仅获取该值从该“ selectedTab”变量中。

作为参考,如何生成点击事件 https://angular.io/guide/user-input