В рамках моей текущей задачи в определенном списке элементов пользователь может выбрать некоторые из них и вызывать "Печать" нет выбранных элементов.
Для каждого выбранного элемента нам нужно распечатать детали. Он похож на печать счетов-фактур отдельных элементов в системе продаж.
Я создал частичное представление для записи каждой записи, но я не уверен, как ее использовать в соответствии с моим требованием.
Можно ли вызвать jQuery для печати на document.ready для выполнения моих требований?
Как предложил @Levib, вызывающий частичный вид в моем PrintView. И функция PrintView document.reay вызывает window.print. Но когда я пытаюсь вызвать "Печать", я не вижу диалог печати.
Это мое мнение,
@section Styles
{
<link rel="stylesheet" href="AdminStyle.css" type="text/css" media="all" />
<link rel="stylesheet" href="AdminPrintOrder.css" type="text/css" media="print" />
}
@foreach (var item in Model)
{
<div id="content" style="page-break-before: always">
@{Html.RenderPartial("_OrderDetailView", item);}
</div>
}
@section scripts
{
<script type="text/javascript">
$(document).ready(function () {
debugger;
window.print();
});
</script>
}
И мой вид выписки с печатью
function printInvoices(){
$.ajax({
type: 'POST',
url: '/Batch/PrintInvoices',
data: '{ "allocationId" : "' + unSelected.toString() + '"}',
contentType: "application/json; charset=utf-8",
traditional: true,
success: printedView,
error: errorInSubscribing
});
}
Нужно ли мне обрабатывать ajax reposne для заполнения диалога печати.
function printedView() {
unSelected = [];
}
И действие контроллера
[HttpPost]
public ActionResult PrintInvoices(string allocationId)
{
var context = new BatchContext();
var orderDetails = context.GetOrderDetails(RetriveList(allocationId));
return View(orderDetails);
}