#javascript #html #angularjs
#javascript #HTML #angularjs
Вопрос:
У меня есть следующий код в HTML для моего приложения, которое использует AngularJS. Я пытаюсь установить company_id равным идентификатору компании по щелчку мыши. единственная проблема в том, что идентификатор компании имеет тип string, и он не работает. хотя это работает, если я просто вставляю целое число. Вот как выглядит мой код:
<div id="wrapper">
<div id="input" ng-init="company_id = ''">
<div>
{{ company_id }}
</div>
<button ng-repeat="company in companies" ng-click="$parent.company_id = {{ company.id }}">
{{ company.name }}
</button>
<a href='#vote'>
<input id="locationSubmit" class="button" type="button" value="Submit" />
</a>
<button ng-click="company_id = 25" ng-init="count=0">
Increment
</button>
</div>
и вот как это выглядит, когда я отображаю его в браузере с идентификаторами
Конечно, это связано с тем, что печатается больше, чем это. Проблема в том, что когда я нажимаю на кнопку company, она не может изменить значение, если я не выну {{ company.id }} и введите целое число, так как же я могу получить разрешение на установку значения в строку?
<button ng-repeat="company in companies" ng-click="$parent.company_id = 0" class="ng-scope ng-binding">
Sigma Chi Fraternity
</button>
Комментарии:
1. вы пробовали {{ company.id }} без фигурных скобок, т.е. просто ng-click=»$parent.company_id = company.id «?
2. Ах. наиболее очевидное решение.. Спасибо! 🙂
Ответ №1:
Вы не должны интерполировать переменные внутри собственной ng-click
директивы angular.
Измените следующее:
ng-click="$parent.company_id = {{ company.id }}"
Для
ng-click="$parent.company_id = company.id"