我是AngularJS的新手。实现了一个小应用程序,用于列出服务器的引号。
在页面上,我有一个列出引号的按钮。用户单击它,显示列表从服务器获取它。同样在同一页面中,可以选择添加新的引号,单击该按钮会显示文本区域以输入新报价,并显示保存&清除按钮。
这一切都很好。
在输入新报价并单击保存时,后端(db)上会发生保存,但列表未更新,显示新添加的报价。
这是saveQuote
函数:
$scope.saveQuote = function () {
$http.defaults.headers.post["Content-Type"] = "application/x-www-form-urlencoded";
var fh = new FormHelper();
if ($scope.quoteId) {
fh.append("quoteId", $scope.quoteId);
}
fh.append("description", $scope.description);
$http.post("http://localhost:8080/VL1.1/saveQuote", fh.data).
success(function (response) {
alert("in save quote");
$scope.quote.description = $scope.description;
upDatedQuoteList(response, "save quotes");
//$scope.quotelist=response.quotelist;
});
};
//$scope.$watch('quotelist')
function FormHelper() {
this.data = "";
this.append = function (name, val) {
if (this.data.length > 0) {
this.data += "&";
}
this.data += encodeURIComponent(name);
this.data += "=";
this.data += encodeURIComponent(val);
};
};
这是upDatedQuoteList函数:
function upDatedQuoteList(response, msg) {
alert(msg);
$scope.quotelist=response.quotelist;
if($scope.quotelist.length > 0) {
alert("setting showlist");
$scope.showlist= true;
}
};
检查流程的一些警报。 Pl忽略了他们。
这是视图模板
<div ng-show="showlist">
<table border="1" border-collapse="true">
<tr class="even">
<th style="width:20px; word-wrap: break-word;">Sl No</th>
<th style="width:800px; word-wrap: break-word;">Description</th>
</tr>
<tr ng-repeat="x in quotelist" >
<td style="width:20px; word-wrap: break-word;">{{ $index+1 }}</td>
<td style="width:800px; word-wrap: break-word;" >{{ x.description }}</td>
<td style="width:20px; word-wrap: break-word;"><button ng-click="editQuote(x)">Edit</button></td>
</tr>
</table>
</div>
高度请求你的帮助。