4

スイッチのあるもののリストがあります。各スイッチで、そのオブジェクトとスイッチをパラメーターとして関数を呼び出すにはどうすればよいですか?

チェックボックスに「ng-change」ディレクティブを設定しようとしましたが、関数が呼び出されないようです。作成した toggleSync 関数を呼び出すにはどうすればよいですか?

私はまったくの初心者なので、深刻な助けが必要な場合は申し訳ありません。

<div id="track-list" ng-controller="Controller" ng-init="update()">
  <div class="data-table">
  <table class="table table-hover tablesorter">
    <tr ng-repeat="item in items">
      <td><a href='{[{item.path}]}/{[{item.id}]}'>{[{item.title}]}</a></td>
      <td>{[{item.time_created}]}</td>
      <td>
        <div class=checkbox>
          <input ng-model="value" id="check{[{$index}]}" type="checkbox" ng-checked="!item.deleted" ng-change="toggleSync(item.id, this)" ng-true-value="YES" ng-false-value="NO"/>
          <label for="check{[{$index}]}">{{value}}</label>
        </div>
      </td>
    </tr>
  </table>


function Controller($scope) {
  console.log("init");
  $scope.items = [];

  $scope.toggleSync = function(objectId, input) {
    console.log("toggle sync");
  }
}
4

1 に答える 1

4

これは、コードといくつかの修正を含むプランカーです (つまり、{{item.title}} の代わりにタグ区切り文字 {[{item.title}]} を使用しました)。

リンク: http://plnkr.co/edit/f9ngMMe8XJT4QDlA0Nx0?p=preview .

このデモでは、item.path/item.id をリンクとして表示する行を含むテーブルがあり、その後に item.title と、状態に応じて値が YES/NO に設定されるチェックボックスが続きます。チェックボックスの状態が変化すると、項目をパラメーターとして toggleSync 関数が呼び出されます。入力チェックボックスには、モデルとして item.value があります。これは、toggleSync 関数内で使用可能なプロパティです。

于 2013-04-14T05:44:56.650 に答える