1
私はこれに対する答えを探していましたが、どこにも見つかりませんでした。テーブルの選択を変更
私は今、私が何をしようとしています何を選択すると、日付入力だから、
<table id="tblCorrAction" class="table table-bordered table-striped table-hover table-condensed">
<thead>
<tr style="height: 30px; background-color: #aeccea; color: #555; border: solid 1px #aeccea;">
<th style="width:18%;">RArea</th>
<th style="width:37%;">P</th>
<th style="width:20%;">C</th>
<th style="width:25%;">CAction</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="ca in CASelectList">
<td>{{ca.QT}}</td>
<td>{{ca.CAPT}}</td>
<td>
<select name="caC_{{ca.QuesID}}" ng-model="item" class="form-control"
ng-selected="ca.Corrected" ng-required="true"
ng-change="GetCorrectedCAData(ca, item)"
ng-options="corr as corr.caText for corr in correctedOption">
<option value="">--Select--</option>
</select>
</td>
<td>
<span>
<input name="caDate_{{ca.QuesID}}" type="text" datepicker=""
ng-model="ca.caDate"/>
</span>
</td>
</tr>
</tbody>
</table>
In my controller
$scope.correctedOption = [{ caValue: 1, caText: 'Yes' }, { caValue: 2, caText: 'No' }];
を持つテーブルを使用すると、選択オプションで[はい]を選択した場合、ユーザはなしを選択した場合、ユーザは、日時入力にしている場合の値を入力することができますされてい入力した値をリセットする必要があります。
$scope.GetCorrectedCAData = function (ca, item) {
if (item.caValue === 2) {
$scope.ca.caDate = ""
}
}
this did not work. Error : Cannot set property 'caDate' of undefined
at ChildScope.$scope.GetCorrectedCAData
第二:入力
<input id="caDate_{{ca.QuesID}}" name="caDate_{{ca.QuesID}}" type="text" datepicker=""
ng-model="ca.caDate"/>
And in controller
if (item.caValue === 2) {
angular.element(document.querySelector("#caDate_" + ca.QuesID)).val("");
}
this also did not work. Error:Missing instance data for this datepicker
第三に追加しましたID:スプライスCASelectListを通じて行をループしてスプライスされた行を追加し、私はいくつかのことを試してみました、それはどれも、まず
を働いていません日付の空のデータ。多くのレコードがたくさんあるので、これを使用したくない。
日付ピッカーディレクティブng-repeat
で
ngControlMod.directive('datepicker', function() {
return {
require: 'ngModel',
link: function (scope, el, attr, ngModel) {
$(el).datepicker({
onSelect: function (dateText) {
scope.$apply(function() {
ngModel.$setViewValue(dateText);
});
}
});
}
};
});
質問に関連する点をコントローラに投稿できますか? '$ scope.ca'とは何ですか? – JustinJmnz
CASelectListは、ng-repeatを使用してテーブルにデータを設定します。
答えて
あなたはあなただけ、あなたは(私はあなたがしたいと思う)ca
がコントローラに$scope.ca
と同じca
ありません。$scope.ca
を実行しているときは、コントローラーにca
と呼ばれる変数$scope
があることを意味します。このように、ng-repeat
の各CASelectList
内の値を参照したい場合はError : Cannot set property 'caDate' of undefined
$scope.ca
ためには上に存在しないことを取得しますを
ca
の前に置いてください。コードは次のようになります出典
2017-11-06 20:16:50 JustinJmnz
それは動作しませんでした。 caDateはリセットされません。 – DotNetBeginner
'$ scope.ca = ...'ただ、ドロップにそれを変更しないでください:(SelectCorrected.caValueは=== 2){ ""} $ scope.ca = { caDate}場合、私はこの を使用しました'$ scope.'の前に' ca.caDate = ""; ' – JustinJmnz
ああ私の悪い。もう一度試してみましょう – DotNetBeginner
関連する問題