【发布时间】:2015-09-09 19:08:04
【问题描述】:
当我尝试使用 ng-include 分段我的 html 时遇到问题:
这是我的 index.html 页面在运行时的样子(prix=price,TVA=tax):
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link type="text/css" rel="stylesheet" href="style.css" />
<title> TVA </title>
</head>
<body>
<div>
<div ng-app="app" ng-controller="appCtrl">
<input ng-model="tva" placeholder="TVA" /><br />
<input ng-model="prix" placeholder="Prix" />
<select ng-model="taxe">
<option>HT</option>
<option>TTC</option>
</select>
<button id="btn" ng-click="calcul()">Calculer</button>
<p>{{ total }}</p>
</div>
</div>
<script src="angular.min.js"></script>
<script src="script.js"></script>
</body>
</html>
script.js:
app = angular.module('app', []);
app.controller('appCtrl', ['$scope', function ($scope) {
$scope.calcul = function() {
if ($scope.taxe == "TTC") {
$scope.total = parseInt($scope.prix) + $scope.prix * $scope.tva /100;
} else if($scope.taxe == "HT") {
$scope.total = 1/(1+$scope.tva/100)*$scope.prix;
}
};
}]);
所以这行得通,结果是一个数字(含税或不含税的价格)。
当我像这样使用 ng-include 时:
<div>
<div ng-app="app" ng-controller="appCtrl">
<div ng-include="'tva.html'"></div>
<input ng-model="prix" placeholder="Prix" />
<select ng-model="taxe">
<option>HT</option>
<option>TTC</option>
</select>
<button id="btn" ng-click="calcul()">Calculer</button>
<p>{{ total }}</p>
</div>
</div>
我只是尝试用新的 HTML 页面替换第一个输入。
tva.html:
<input ng-model="tva" placeholder="TVA" /><br />
现在结果显示“NaN”(我将这些代码放在服务器上,以便我可以在线查看)。这是为什么呢?
【问题讨论】:
标签: javascript angularjs declaration prototypal-inheritance angularjs-ng-include