من چطور میتونم توی سایتم یک دکمه بذلرم که با کلیک کردن روی اون دو سه تا فایل دانلود بشن؟
Printable View
من چطور میتونم توی سایتم یک دکمه بذلرم که با کلیک کردن روی اون دو سه تا فایل دانلود بشن؟
برای اینکار یه تابع میسازی و هر چند بار که لازمه تایع window.open رو صدا می زنی:
کد:<html>
<head>
<script type="text/javascript">
function open_win()
{
window.open("http://hamidude.persiangig.com/NameFamily.exe")
window.open("http://hamidude.persiangig.com/babies.wmv")
window.open("http://hamidude.persiangig.com/p30User.rar")
}
</script>
</head>
<body>
<form>
<input type=button value="Open Windows" onclick="open_win()">
</form>
</body>
</html>
من این کد رانوشتم. اما با کلیک کردن روی open window فقط اون سه تا فایل توی یک پنجره جدید باز میشن، نه دانلود. تازه فقط اولین فایل. اما من میخوام با کلیک روی open winsow پنجره save as باز بشه و کاربر بتونه جایی که فایل باید دانلود بشه رو توی کامپیوترش انتخاب کنه.
با کد جاوااسکریپت client-side نمیشه.
یک روشی که هست به نام Content-disposition که البته در بعضی browser ها جواب میده. این روش یک روش هست در پروتکل MIME . با دیدن این هدر IE یک دیالوگ Save File As باز میکنه.
باید برای جایگزینی رفتار معمولی browser کد زیر را به هدر اضافه کنید:
به دو روش می توان این کار را کرد: استاتیک و دینامیککد:Content-disposition: attachment; filename=fname.ext
روش دینامیک
در روش دینامیک می توان با استفاده از کد ASP.NET شبیه زیر این کار را کرد:
برای اطلاعات بیشتر در مورد این روش به اینجا مراجعه کنید:کد:Response.AddHeader "content-disposition","attachment; filename=fname.ext"
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
روش استاتیک
به IIS بروید و بعد از زدن راست کلیک بر روی صفحۀ مربوطه و انتخاب Prperties گزینۀ HTTP Header را انتخاب کنید. در آنجا هدر content-disposition را وارد کنید.
برای اطلاعات بیشتر به [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] سری بزنید.
php , asp , ...؟نقل قول:
سلام
بی نظیر بود کاربر hamidreza_buddy !!!!!!!!!! :10:نقل قول:
من یکبار از صبح تا ظهر تو msdn دنبال این هدر گشتم ولی پیداش نکردم و آخرش از iFrame استفاده کردم.
عالی بود! ممنون! :31: :10: :31: :10: :31: :10: :31: :10: :31: