PDA

View Full Version : مبتدی: یک کد برای پرینت صفحه نیاز دارم



javad75
سه شنبه 19 دی 1391, 19:23 عصر
سلام من یک صفحه php دارم می خواهم زمانی که برای پرینت گرفتن اقدام می کنم،یک سرعی عناصر مانند دکمه ها درپرینت گرفتن نباشند

می خواستم بدونم باید چه کار کنم؟!

2undercover
سه شنبه 19 دی 1391, 19:40 عصر
باید از خاصیت media توی CSS استفاده کنید به این صورت که بگید اگه کاربر داره از صفحه پرینت می گیره یک سری کد CSS دیگه لود بشه:

<link rel="stylesheet" href="آدرس فایل CSS برای پرینت از صفحه" media="print">

javad75
سه شنبه 19 دی 1391, 20:10 عصر
خیلی ممنون که جواب دادید،ببینید من می خواهم مثلا دکمه ها نشون داده نشد

میشه بگید چه جوری در css می تونم کاری کنم که دکمه ها را هنگام پرینت گرفتن نشون نده؟

mokha21
سه شنبه 19 دی 1391, 20:28 عصر
از کد زیر استفاده کنید

input[type="submit"],input[type="button"],button{
display:none;
}

javad75
سه شنبه 19 دی 1391, 20:40 عصر
ببخشید که زیاد سوال می کنم،چون مبتدی هستم
-------
بعد در مورد لیست های کشویی چه طور چه جوری باید اون ها را مخفی کنم؟

mokha21
سه شنبه 19 دی 1391, 20:59 عصر
input[type="submit"],input[type="button"],button,select{
display:none;
}

javad75
سه شنبه 19 دی 1391, 21:03 عصر
mokha21 خیلی خیلی ممنونم که دارید کمکم می کنید

فقط یه مودی هست- در مورد لیست های کشویی من می خواهم که مقدار های داخلشون داخل پرینت بیفته ولی اون فلش به سمت پایین داخل پرینت نباشه

ممنون می شم این یه مورد را هم جواب بدید

mohsen_31369
سه شنبه 19 دی 1391, 21:22 عصر
بهتره مقادیری که از کاربر میگیری به یک فایل دیگر ارسال نمایید و در آن فایل با layout که مورد نظرتون هست برای پرینت آماده نمایید.

dousti_design
سه شنبه 19 دی 1391, 21:28 عصر
یک پاپ آپ مرورگر باز کنید و هرچی که میخاید رو توش بذارید بعدش پرینتش کنید

javad75
سه شنبه 19 دی 1391, 21:35 عصر
بهتره مقادیری که از کاربر میگیری به یک فایل دیگر ارسال نمایید و در آن فایل با layout که مورد نظرتون هست برای پرینت آماده نمایید.

یک پاپ آپ مرورگر باز کنید و هرچی که میخاید رو توش بذارید بعدش پرینتش کنید
میشه یکم بیشتر توضیح بدید متوجه نشدم،اگه ممکنه لینکی چیزی بدید یا خودتون آموزشش را قرار بدید

mokha21
سه شنبه 19 دی 1391, 21:37 عصر
فک نکنم این مورد رو کاریش کرد

mokha21
سه شنبه 19 دی 1391, 21:43 عصر
از کد زیر استفاده کنید


<style type="text/css" media="screen">
.print-select{
display:none;
}
</style>
<script>
$(function(){

$("select").each(function(i){

var $el = $(this);
var $options = $el.find("option");

$el.after("<div class='print-select'>Options: <ul id=sel"+i+"></ul></div>");

var $curPrintBox = $("#sel"+i);

$options.each(function() {

$curPrintBox.append("<li>"+$(this).text()+"</li>");

});

});

});
</script>

dousti_design
سه شنبه 19 دی 1391, 21:46 عصر
میشه یکم بیشتر توضیح بدید متوجه نشدم،اگه ممکنه لینکی چیزی بدید یا خودتون آموزشش را قرار بدید
من همیشه از این کد استفاده میکنم


<script language="javascript">
function printDiv()
{
var str=(document.getElementById('targetDiv1').innerHT ML);
w=800;
h=200;
var left = (screen.width/2)-(w/2);
var top = (screen.height/2)-(h/2);
var f="height="+h+",width="+w+",left="+left+",top="+top;
var printWin = window.open("modules/popup.php","printSpecial",f);
printWin.document.open();
printWin.document.write(str);
printWin.print() ;
printWin.close();
}
</script>

فرض کن کد صفحم اینه:


<body>
<div id="targetDiv1">
all thing here will print
</div>
not for print
</body>

اما اگر بخای مثلا یک لیست باکس داری بصورت باز پرینت بشه و معلوم هم نشه که لیست باکس هست باید تو یه صفحه جدا طراحیش کنی.
خب احتمالا محتویات اون لیست باکس از دیتابیس خونده میشه.
باید تو یه صفحه جدا(مثلا در مثال بالا modules/popup.php) بیای همون محتویات لیست باکس رو لیست کنی و هرجور که میخای تو پرینت بیفته چاپ کنی(مثلا ul و li میذاری یا هرجور که دوست داری)
موفق باشید.
طراحی سایت (http://www.sepandsystem.ir)