文本框中的角度表达式

时间:2016-12-17 10:02:53

标签: javascript html angularjs

我使用角度表达式作为文本框中的值来执行某些操作

             `<tr>
                <td><input type="text" ng-model="product.costPrice" required
                                placeholder=" product Cost" class="form-  control" > <span
                                class="help-block"></span></td>
                        </tr>
                        <tr>
                            <td><label>Profit</label></td></tr>
                            <tr>
                            <td><input type="text" ng-model="Product.profit" required
                                placeholder=" Profit in %" class="form-control"> <span
                                class="help-block"></span></td>
                        </tr>
                        <tr>
                            <td><label>price</label></td></tr>
                            <tr>
                            <td><input type="text"  value="{{product.costPrice * Product.profit}}" ng-model="Product.sellingPrice" required
                                placeholder=" selling price" class="form-control"> <span
                                class="help-block"></span></td>
                        </tr>
                        <tr>
                        <td>

                        <p>Expense on Books : {{product.costPrice * Product.profit}} Rs</p>
                        </td>
                        </tr>`

表达式根本不起作用,即使它在<p></p>标签中工作我做错了什么?

4 个答案:

答案 0 :(得分:0)

你可以创建一个函数(在你可以编写的函数内部并返回你的表达式):

x=3

并使用$scope.myExpression = function(){ return $scope.myVar + "hello";//this is your expression function }

从这样的输入框中调用它
ng-value

工作代码here

答案 1 :(得分:0)

编写函数将有助于为您计算,然后将结果提供给您的范围。 ng-model将为您绑定它。在这种情况下,可以很容易地避免ng值。

$scope.calculate = function(cost, profit) {
    $scope.Product.sellingPrice = cost * profit;
  }

这只会在文本框中显示结果

<input ng-model="Product.sellingPrice">

See demo here

答案 2 :(得分:0)

只需替换

value =“{{product.costPrice * Product.profit}}”ng-model =“Product.sellingPrice”

ng-model =“Product.sellingPrice = product.costPrice * Product.profit”

在以下行中:

<input type="text"  value="{{product.costPrice * Product.profit}}" ng-model="Product.sellingPrice" required placeholder=" selling price" class="form-control">

工作代码:http://plnkr.co/edit/YLQZaCKPsLrk0QN3hvnU?p=preview

答案 3 :(得分:0)

你可以在控制器中进行计算.. 或者试试这个...

       <tr>
                <td><input type="text" ng-model="product.costPrice" required
                                placeholder=" product Cost" class="form-  control" > <span
                                class="help-block"></span></td>
                        </tr>
                        <tr>
                            <td><label>Profit</label></td></tr>
                            <tr>
                            <td><input type="text" ng-model="Product.profit" required
                                placeholder=" Profit in %" class="form-control"> <span
                                class="help-block"></span></td>
                        </tr>
                        <tr>
                            <td><label>price</label></td></tr>
                            <tr>
                            <td><input type="text" ng-model="Product.sellingPrice" required
                                placeholder=" selling price" class="form-control"> <span
                                class="help-block"></span></td>
                        </tr>
                        <tr>
                        <td>

                        <p>Expense on Books : {{Product.sellingPrice = product.costPrice * Product.profit}} Rs</p>
                        </td>
                        </tr>