Ich habe eine Tabelle mit einigen Daten in HTML anzuzeigen. Wenn ich auf Drucken klicke, muss ich alle Daten von db abrufen und ausdrucken. Ich erhalte die Daten und befülle die Modelldaten, wenn ich auf "Drucken" klicke, nur das Modell wird aktualisiert und der Ausdruck zeigt die alten Daten an. Im folgenden Code werden neue Elemente nicht zu Elementen hinzugefügt, wenn ich auf Drucken klicke.
http://jsfiddle.net/vijaivp/Y3BJa/306/
HTML
<div ng-app>
<div class="hidden-print" ng-controller="PrintCtrl">
<br />
<div id="overallPrint" class='visible-print' style="float:left; margin-right:50px;">
<h4>Overall Report</h4>
<table border="1">
<thead>
<tr>
<td>Name</td>
<td>Price</td>
<td>Quantity</td>
</tr>
</thead>
<tbody>
<tr ng-repeat="item in items">
<td>{{item.Name}}</td>
<td>{{item.Price}}</td>
<td>{{item.Quantity}}</td>
</tr>
</tbody>
</table>
<br>
<input type="button" value="Print Overall" ng-click='printOverallReport()' />
</div>
</div>
</div>
JS
function PrintCtrl($scope, $window, $q) {
$scope.items = [
{Name: "Soap", Price: "25", Quantity: "10"},
{Name: "Shaving cream", Price: "50", Quantity: "15"}
];
$scope.newitems = [
{Name: "Shampoo", Price: "100", Quantity: "5"}
];
$scope.printOverallReport = function() {
$scope.items.push($scope.newitems[0]);
$window.print();
};
}
Vielen Dank für Ihre Antwort, Ihr Update arbeitete für Beispieldaten. Aber wir haben eine Bedingung, bei der wir eine DOM-Manipulation durchführen, um die DOM-Divs basierend auf dem Berichtstyp ein- oder auszublenden. JS Geige hier - http://jsfiddle.net/vijivac/Y3BJa/309/ Der detaillierte Bericht erhält nicht das aktualisierte Ergebnis zum Drucken. Können Sie überprüfen und lassen Sie mich wissen, was hier das Problem wäre. – vijayanand
@vijayanand Dies funktioniert: http://jsfiddle.net/Y3BJa/310/ Sie mussten nur die Elementauswahl abbrechen, da die Funktion beendet werden musste, bevor die Änderung 'ditems = newitems' stattfand. –
U Felsen Mann, ... wirklich funktioniert es jetzt gut, .... Thnks viel .. !! :) – vijayanand