0
ng-model値を文字列形式で保存し、外部js.Belowで使用する必要があります。私はそれを文字列形式で保存することができません。外部jsのng-model値にアクセス
ここ<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="style.css">
<script src="script.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script>
var app = angular.module('appNew', []);
app.controller('controllerNew', function($scope) {
$scope.dataSet = ["A", "B", "C"];
$scope.selectColor = null;
//var colorString = "A,Green:B,Green:C,Red";
});
/* Below function getValues() is in external file.
I just need to pass selected dropdown from angular JS
to this below code in string format as shown below*/
function getValues() {
var colorString = "A,Green:B,Green:C,Red";
colorString = colorString.split(":");
var lengthColorString = colorString.length;
var colorStringRed = [];
var colorStringBlue = [];
var colorStringGreen = [];
for (i = 0; i < lengthColorString; i++) {
var group = colorString[i].split(",");
switch (group[1]) {
case "Red":
colorStringRed.push(group[0]);
break;
case "Blue":
colorStringBlue.push(group[0]);
break;
case "Green":
colorStringGreen.push(group[0]);
}
}
alert(colorStringRed);
alert(colorStringBlue);
alert(colorStringGreen);
};
</script>
</head>
<body ng-app="appNew">
<table class="table TableOne" ng-controller="controllerNew">
<thead>
<tr>
<th>Serial</th>
<th>Data</th>
<th>Dropdown</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="data in dataSet">
<td>{{$index + 1}}</td>
<td>{{data}}</td>
<td>
<select ng-model="$parent.selectColor[data]">
<option value="">-- Select --</option>
<option value="Red">Red</option>
<option value="Blue">Blue</option>
<option value="Green">Green</option>
</select>
</td>
<td>{{selectColor}}</td>
</tr>
</tbody>
<button onclick="getValues()">Alert Values</button>
</table>
</body>
</html>
$ scope.dataSetは、例えば任意の長さ[ "A"、 "B"、 "C"、 "D"、 "E"]のものであってもよいです。 スコープ内の値を文字列形式に変換する方法はありますか?
https://plnkr.co/edit/2MdwoWpu6MGrt2rA61io?p=preview
コントローラー内で$ scope.selectColorにアクセスしようとすると、常にnullが返されます。 –
$ scope.selectColorをnullに設定していて、それを更新するコードがありません。 – Mickers
ng-model = "$ parent.selectColor [data]"はselectColorの値を保存します。{{selectColor}}を使用してチェックすることができます..追加したplnkerを確認します。私は外部のjsで使用できるように文字列として変数 –