ورود

View Full Version : سوال: پرینت از محتویات یک دایو



mohsen.nsb44
چهارشنبه 20 اسفند 1393, 16:02 عصر
سلام
من یک دکمه ثبت دارم که وقتی روش کلیک میکنم محتویات نمایش داده شده در گریدویو رو ثبت میکنه حالا میخوام بعد از ثبت
محتویات دایو که داخلش گریدویو و متن های دیگه وجود داره چاپ بشه
اگه نمونه کدی بزارین ممنون میشم

mehdi.mousavi
پنج شنبه 21 اسفند 1393, 05:40 صبح
سلام من یک دکمه ثبت دارم که وقتی روش کلیک میکنم محتویات نمایش داده شده در گریدویو رو ثبت میکنه حالا میخوام بعد از ثبت محتویات دایو که داخلش گریدویو و متن های دیگه وجود داره چاپ بشه اگه نمونه کدی بزارین ممنون میشم


سلام.
اگر بنا به شرایط نمی تونید از Media Query (https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries) ها استفاده کنید، می تونید بدین شکل عمل کنید:

(function ($) {
$.fn.extend({
print: function() {
var el = this.get(0);

var wnd = window.open('', 'Print', 'width=100,height=100');
wnd.document.write('<html><head><title>Print</title></head><body >' + el.innerHTML + '</body></html>');
wnd.document.close();
wnd.focus();
wnd.print();
wnd.close();
}
});
})(jQuery);



حالا با در دست داشتن این تابع، می تونیم محتوای هر Element ای رو بدین شکل Print بگیریم:

$(function(){
$('#mydiv').print();
});


در مثال فوق، المنتی با ID ی mydiv چاپ خواهد شد.

موفق باشید.

mohsen.nsb44
پنج شنبه 21 اسفند 1393, 14:20 عصر
سلام.
اگر بنا به شرایط نمی تونید از Media Query (https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries) ها استفاده کنید، می تونید بدین شکل عمل کنید:

(function ($) {
$.fn.extend({
print: function() {
var el = this.get(0);

var wnd = window.open('', 'Print', 'width=100,height=100');
wnd.document.write('<html><head><title>Print</title></head><body >' + el.innerHTML + '</body></html>');
wnd.document.close();
wnd.focus();
wnd.print();
wnd.close();
}
});
})(jQuery);



حالا با در دست داشتن این تابع، می تونیم محتوای هر Element ای رو بدین شکل Print بگیریم:

$(function(){
$('#mydiv').print();
});


در مثال فوق، المنتی با ID ی mydiv چاپ خواهد شد.

موفق باشید.

دوست عزیز ممنون از راهنماییت
از اونجایی که من جی کوئری کار نکردم و از کد های اماده استفاده کردم یه سوال دارم
چطور میتونم از کدتون تو دکمم استفاده کنم که
وقتی روی دکمه کلیک شد اول عملیات ثبت انجام بشه بعد پرینت گرفته بشه
یعنی کد ها سمت سرور(عملیات ثبت اطلاعات) اجرا بشه بعد کد شما اجرا بشه
ممنون.

id1385
جمعه 22 اسفند 1393, 22:04 عصر
بهترین کاره اینه که این کدو به فایل css ات اضافه کنی

@media print
{
.none-print, .none-print *
{
display: nonene !important;
}
}


البته موقع اینکلود کردن فایلت به این شکل عمل کن


<link rel="stylesheet" href="cssfile.css" media="screen, print" type="text/css">


بعد هرکدوم از المنتهای صفحه که نمیخوای تو پرینت بیان از کلاس بالا استفاده کنی مثل زیر


<div class="none-print">not show oe </div>


موفق باشید

mohsen.nsb44
یک شنبه 24 اسفند 1393, 14:15 عصر
متاسفانه موفق نشدم اگه بیشتر راهنمایی کنید ممنون میشم

bagheri.mj
یک شنبه 23 فروردین 1394, 23:28 عصر
خوب شما اسم تابع جاوا و اسمی که باهاش اونو از دکمه صدا زدید یکی نزاشتید که ! هر دو باید مثلا
Button1_onclick() باشه