作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个像这样的html
<ul class="list">
<div ng-repeat="avis in avisData">
<li id="li">
<a class="item item-thumbnail-left" href=""><img src=data:image/jpeg;base64,{{avis.imageClient}} style="width: 100px; height: 100px;"><h3>{{avis.avis.idconsommateur.nom}} {{avis.avis.idconsommateur.prenom}}</h3><p>{{avis.avis.commentaire}}</p></a>
</li>
<br>
</div>
</ul>
<button class="button button-calm " style="float:right;height: 10px;" ng-controller="AvisEventController" ng-click="ecrireAvis()">
<div style="float: right;width:80%;">Ecrire</div>
<div style="margin-top:0px;margin-right:10px;float:left;">
<i class="fa fa-pencil fa-lg" style="padding-right: 10px;margin-top: -28px;"></i>
</div>
</button>
当我点击按钮('ecrire')时,我想在 ul 标签中附加一个 li 标签
我有这样的指令,我已经尝试过,但它不起作用,只需在 ul 中添加一个没有内容的 li :
$scope.ecrireAvis=function(){
$scope.consommateur=angular.fromJson($localStorage.UserConsConnect);
$scope.evenement=angular.fromJson($localStorage.event);
var objAvis =new Object();
objAvis.commentaire=$scope.commentaire;
objAvis.idconsommateur= $scope.consommateur;
objAvis.idevenement=$scope.evenement;
alert($localStorage.star);
objAvis.note=$localStorage.star;
$http.post('http://127.0.0.1:8080/elodieService/avis/',objAvis).success(function(response, status, headers, config){
alert("SUCCESS ajout dans la table Avis !!");
$scope.avisData.push({commentaire:objAvis.commentaire});
}).error(function(err, status, headers, config){
//process error scenario.
});
我的服务网站:
{
avis: {
commentaire: "aaaaaaaa",
date: null,
idAvis: 8,
idconsommateur: {},
idevenement: {},
imageJson: null,
note: 3
},
imageAvis: null,
imageClient: "/9j/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpL
},
最佳答案
问题是因为您没有绑定(bind) avisData
中所需的所有内容,例如 imageClient
、idconsommateur
并且不使用 avis.avis
仅使用 avis
并从 ul
中删除 div
,因为 ul
必须包含 li
喜欢
<ul class="list">
<li ng-repeat="avis in avisData">
<a class="item item-thumbnail-left" href=""><img src=data:image/jpeg;base64,{{avis.imageClient}} style="width: 100px; height: 100px;"><h3>{{avis.idconsommateur.nom}} {{avis.idconsommateur.prenom}}</h3><p>{{avis.commentaire}}</p></a>
</li>
</ul>
在脚本中推送对象,
$scope.avisData=[]; //define avisData as array
// http request here
$scope.avisData.push({
// now commentaire,idconsommateur and imageClient can be directly accessible
commentaire:objAvis.commentaire,
idconsommateur:objAvis.idconsommateur,
imageClient:someOtherObject
});
此外,我发现您没有关闭 $scope.ecrireAvis
函数,因此请正确关闭它。
如果您收到响应中的对象数组,那么您需要更改上面的代码,例如,
for(var i=0,l=response.length;i<l;i++){
$scope.avisData.push({
// now commentaire,idconsommateur and imageClient can be directly accessible
commentaire:response[i].avis.commentaire,
idconsommateur:response[i].avis.idconsommateur,
imageClient:response[i].imageClient
});
}
关于javascript - 如何在 angularjs 中动态追加 <li> ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35149665/
我是一名优秀的程序员,十分优秀!