In meiner Anwendung mache ich eine Anfrage erhalten durch Angulars http-Dienst und in der Ansicht Schleife über die zurückgegebenen Daten, um eine ungeordnete Liste anzuzeigen. Das Problem besteht jedoch darin, dass Daten nach der get-Anforderung verfügbar sind und nicht auf der Seite angezeigt werden. Scheint ein Problem im CSS-Stil zu sein, aber ich weiß nicht, wie ich es beheben kann. Ich möchte die Unorder-Liste in einem Bootstrap-Panel als Body zeigen.ng-Repeat-Elemente werden nicht angezeigt
Unterhalb das Winkelstück Code innerhalb des Controlller ist, die Daten für die Einrichtung
$http.get('/messages').success(function(data) {
console.log("Messages are "+data);
$scope.records=data;
});
Hier ist die HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>jQuery Bootstrap News plugin</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/libs/css/bootstrap.min.css"/>
<link rel="stylesheet" href="/libs/css/font-awesome.min.css"/>
<link rel="stylesheet" href="/libs/css/custom.css"/>
<script src="/libs/js/jquery-3.0.0.min.js" type="text/javascript"></script>
<script src="/libs/js/newsbox.min.js" type="text/javascript"></script>
<script src="/libs/js/angular.min.js" type="text/javascript"></script>
<script src="/libs/js/main.js" type="text/javascript"></script>
</head>
<body ng-app="mean" ng-controller="MainCtrl">
<br/>
<div class="container">
<div class="row">
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<span class="glyphicon glyphicon-list-alt"></span><b> What you wanna do before you die ...</b>
</div>
<div ng-cloak class="panel-body">
<div class="row">
<div class="col-xs-12">
<ul class="demo1">
<li class="news-item" ng-repeat="item in records">
<table cellpadding="4">
<tr>
<td >
<img class="img-circle" width="60"
ng-src="/images/{{($index+11) % 10}}.png"/>
</td>
<td ng-cloak>
{{$index+1}}. {{item.username}}
</td>
</tr>
</table>
</li>
</ul>
</div>
</div>
</div>
<div class="panel-footer"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-2 col-md-offset-1 ">
<form name="messageForm" novalidate="novalidate" ng-submit="onSubmit()" id="message-box">
<div class="form-group">
<textarea required ng-model="formModel.message"
style="background-color:#ffffe6;border:double 4px orange;border-radius: 0.5em;" rows="3" cols="50" id="message" placeholder="Write your message and press enter.."> </textarea>
<button class="btn btn-primary" type="submit">Shoot it</button>
</div>
<p ng-cloak class="help-block" ng-show="formModel.nameError">Looks like you forgot to mention your name !!!</p>
<p ng-cloak class="help-block" ng-show="formModel.messageEmpty">Really you don't wanna do anything before you die !!! </p>
<p ng-cloak class="help-block" ng-show="formModel.messageTooLong">You are trying to do too many things buddy, just 150 characters !!! </p>
</form>
</div>
</div>
</div>
<script type="text/javascript">
$(function() {
$(".demo1").bootstrapNews({
newsPerPage: 12,
autoplay: true,
pauseOnHover:true,
direction: 'up',
newsTickerInterval: 4000,
onToDo: function() {
//console.log(this);
}
});
});
</script>
</body>
</html>
Wenn I Chrom dev Werkzeug überprüfen durch, sind Daten vorhanden, dass Ungeordnete Liste, Daten sind vorhanden, werden aber im Bootstrap-Panel nicht richtig angezeigt.
sehen, dieses Bild
ich bemerkte, dass es an der Unterseite der ungeordneten Liste ein undefiniertes Element ist, während er durch Entwickler-Tools zu überprüfen. Irgendeine Idee, was schief geht?
In dem Array. Gibt es irgendwelche undefinierten Elemente? – Ashan
Das Problem könnte sein, weil sowohl Angular als auch jQuery versuchen, die gleichen DOM-Elemente zu manipulieren. – Lex
hi @Ashan gibt es kein undefiniertes Element in den Daten zurückgegeben –