расчет в выводе angularjs не работает с ng-моделью

0

Я работаю над угловым проектом, где выполняю расчеты на странице. В текстовом поле, где я делаю окончательные результаты, когда я получаю его ng-model, ответ на которую не загружается. Когда я вынимаю ng-model, появляется ответ. Но я хочу, чтобы он работал, пока у него есть ng-model = "total", потому что я отправлю общее значение в базу данных. С помощью приведенного ниже сценария он работает

<input name="price" type="text"  id="price" ng-model="price">
<input name="quantity" type="text"  id="quantity"ng-model="price">
<input name="total" type="text"  id="total" value="{{.price*quantity}}">

Но с этим

 <input name="price" type="text"  id="price" ng-model="price">
    <input name="quantity" type="text"  id="quantity"ng-model="price">
    <input name="total" type="text"  id="total" value="{{.price*quantity}}" ng-model="total">

он не работает. Ответ не отображается в текстовом поле

1 ответ

2
Лучший ответ

Попробуйте это вместо этого:

<input name="price" 
       type="text"
       ng-model="price" string-to-number>

<input name="quantity" 
       type="text"
       ng-model="quantity" string-to-number>

<span>{{ price * quantity }}</span>

Я не уверен, почему вы пытаетесь поместить вычисляемое значение в 3-й вход, но если вы хотите, вы хотите использовать ng-model-options чтобы сообщить об общем ngModel, что он обрабатывает это значение как getter/setter - https://docs.angularjs.org/api/ng/directive/ngModelOptions

Также обратите внимание на директиву string-to-number. Вы имеете дело со строками ввода. Поэтому для того, чтобы интерполяция работала, вам может понадобиться добавить их.

редактировать

вот рабочий пример того, как я думаю, вы пытались разрешить переопределение на вычисленное значение. Вы можете ввести другое значение в общий ввод и нажать enter, чтобы увидеть, как он работает. Это использует параметры ng-model-options - http://codepen.io/jusopi/pen/XKQzzv

  • 0
    Спасибо за ответ. это сработало. Можете ли вы посмотреть на это для меня? stackoverflow.com/questions/38858112/...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню