Мне нужно сохранить значение ng-модели в строковом формате и использовать его во внешнем js.Below - это код. Я не могу сохранить его в строчном формате.Значение доступа ng-модели во внешних js
<!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"]. Есть ли способ конвертировать значение в область видимости в строковый формат? Ниже приводится ссылка Plunker: https://plnkr.co/edit/2MdwoWpu6MGrt2rA61io?p=preview
Если я пытаюсь получить доступ к $ scope.selectColor внутри контроллера, я всегда получаю null .. –
Вы установили $ scope.selectColor в null и у вас нет кода для его обновления. – Mickers
ng-model = "$ parent.selectColor [data]" сохраняет значение в selectColor .. вы можете проверить с помощью {{selectColor}} .. проверить plnker я добавил..что мое беспокойство заключается в том, как я храню это в переменная как строка, чтобы я мог использовать ее во внешних js –