السلام عليكم ورحمة الله وبركاته
عندي webpage فيها image control , fileupload
عاوزة لما اختار صورة من الهارد باستخدام fileupload تتغير الصورة الموجودة في image control بدون الضغط علي اي زر اخر
لو في طريقة اخري غير استخدام fileupload ياريت حد يقولها
السلام عليكم ورحمة الله وبركاته
عندي webpage فيها image control , fileupload
عاوزة لما اختار صورة من الهارد باستخدام fileupload تتغير الصورة الموجودة في image control بدون الضغط علي اي زر اخر
لو في طريقة اخري غير استخدام fileupload ياريت حد يقولها
طيب في حل
إذا لم تكوني تريدين أن يقوم المتصفح بإعادة تحميل الصفحة بإمكانك استخدام AJAX
لا يمكن بأي حال من الأحوال تغيير الصورة مباشرة!!! فهي غير موجودة لديك على المخدم Server
لا بد من حدوث طلب ما للـ Server
الحل يمكن أن يكون:
1. ضعي Script Manager على الصفحة في الأعلى (لن يظهر وقت التنفيذ)
2. ضعي Update Panel على الصفحة وضعي بداخلها الـ fileuploader والـ Image و Button صغير
3. في حدث النقر على الـ Button اكتبي الكود الذي يحفظ الصورة إلى الـ Server باستخدام التابع SaveAs الموجود في الـ fileuploader ثم خذي المسار وضعيه في مسار الصورة في Image.
ملاحظة: هذه العملية لن تتطلب إعادة طلب الصفحة كاملة من الـ Server لوجود الـ components في UpdatePanel !!!
إذا احببت أيضا بإمكانك وضع مكون اسمه UpdateProgress الهدف منه إظهار أي شيء عند عمل الـ UpdatePanel مثل الدائرة الصغيرة التي نراها تتحرك في الكثير من المواقع مثل Hotmail و Google وحتى موقع الفريق العربي للبرمجة!! فقط ضعي ما تريدين داخل هذا UpdateProgress واضبطي خاصية UpdatePanel فيه على اسم الـ UpdatePanel السابقة!!!
وسترين شيئاً جميلاً إن شاء الله
في حال لم يكن لديك الـ AJAX بإمكانك الحصول عليه وتنصيبه بسهولة من الرابط التالي:
ملاحظة أخيرة: الرجاء اختيار عنوان معبر في المرة القادمة ;)
MAAAAAAAAAAAAAAAAAAAAAAAC
:السلام عليكم
لايمكن عمل upload file الا اذا تم عمل full postback للصفحه :lol:
تم تعديل هذه المشاركة بواسطة c++2003 في 26 يوليو 2008 في 00:32

Oh oh oh
ops
أعتذر عن هذا الخطأ غير المقصود
والله راحت عن بالي!!!!
عذرا :(
لا يمكن استخدام AJAX هنا!!
عذرا فقد غابت عن بالي :(
وشكرا c++2003 للتذكير
MAAAAAAAAAAAAAAAAAAAAAAAC
السلام عليكم ورحمة الله وبركاته
شكرا جزيلا علي الرد بس ياريت حد يشرح لي الخطوات بالتفصيل عشان انا مبتدئة في asp.net لسه بتعلمه
او لوممكن عمل مثال
وياريت بلاش حكاية ال ajax دي عشان معنديش اي فكره عنه
هذا الكود يقوم باظهار الصوره التي تقومي باختيارها قبل عمل رفع للصور
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Untitled Page</title>
<script type="text/javascript">
// width to resize large images to
var maxWidth=100;
// height to resize large images to
var maxHeight=100;
// valid file types
var fileTypes=["bmp","gif","png","jpg","jpeg"];
// the id of the preview image tag
var outImage="previewField";
// what to display when the image is not valid
var defaultPic="Water lilies.jpg";
function preview(what){
var source=what.value;
var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
for (var i=0; i<fileTypes.length; i++) if (fileTypes==ext) break;
globalPic=new Image();
if (i<fileTypes.length) globalPic.src=source;
else {
globalPic.src=defaultPic;
alert("THAT IS NOT A VALID IMAGE\nPlease load an image with an extention of one of the following:\n\n"+fileTypes.join(", "));
}
setTimeout("applyChanges()",200);
}
var globalPic;
function applyChanges(){
var field=document.getElementById(outImage);
var x=parseInt(globalPic.width);
var y=parseInt(globalPic.height);
if (x>maxWidth) {
y*=maxWidth/x;
x=maxWidth;
}
if (y>maxHeight) {
x*=maxHeight/y;
y=maxHeight;
}
field.style.display=(x<1 || y<1)?"none":"";
field.src=globalPic.src;
field.width=x;
field.height=y;
}
</script>
</head>
<body>
<div align="center" style="line-height: 1.9em;">
Test it by locating a valid file on your hard drive:
<br>
<input type="file" id="picField" onchange="preview(this)">
<br>
<img alt="Graphic will preview here" id="previewField" src="Water%20lilies.jpg">
</body>
</html>تم تعديل هذه المشاركة بواسطة c++2003 في 27 يوليو 2008 في 05:39

حياك الله اخي C++ .. بالفعل هناك طريقتين فقط:
1- إما بعد رفع الصورة بالفعل على السيرفر
2- باستخدام الجافا سكربت كما وضح اخينا الحبيب سي بلس بلس
ASP.NET Team Leader
moh_kin_mah@hotmail.com
--------------------------------
لو أعجبك أي من مشاركاتي ... برجاء قم بتقييم المشاركة عبر الأزرار الموجودة أسفل يسار كل مشاركة