PDA

View Full Version : مشکل در فراخوانی پاپ آپ



arash ka
سه شنبه 23 اردیبهشت 1393, 12:34 عصر
سلام
من برای سایتم یک گالری درست کردم
واسه پاپ آپ هم از light box استفاده می کنم
میخواستم بپرسم چجوری فراخونی کنم؟
آخه عکس ها توی image نمایش داده می شن که داینامیک باشن ولی نمی دونم کد فراخوانیرو چجوری بهش اضافه کنم
اینم نمونه کد light box

<a href="img/image-1.jpg" data-lightbox="image-1" data-title="My caption">Image #1</a>


من می خوام عکس داینامیک لود شه ولی فقط بلدم عکس رو توی imagebox لود کنم اینجا چجوری انجام بدم؟

meisam12
سه شنبه 23 اردیبهشت 1393, 12:40 عصر
خوب می تونی تو کنترل Repeater عکس هایت را به صورت داینامیک bind کنی.

arash ka
سه شنبه 23 اردیبهشت 1393, 13:01 عصر
خوب می تونی تو کنترل Repeater عکس هایت را به صورت داینامیک bind کنی.


دوست عزیز من از کد زیر استفاده می کنم که عکسم داینامیک باشه فقط می خوام بدونم چجوری قسمت href رو هم داینامیک کنم؟

<a href= "css/images/port-2.gif" data-lightbox="img/image-1" data-title= label3 ><asp:Image ID="Image6" runat="server" ImageUrl="~/css/images/img7-small.jpg" /></a>

meisam12
سه شنبه 23 اردیبهشت 1393, 13:06 عصر
<asp:Repeater ID="rptImages" runat="server">
<ItemTemplate>
<a href= "css/images/port-2.gif" data-lightbox="img/image-1" data-title= label3 >
<asp:Image ID="Image6" runat="server" ImageUrl='<%#Eval("نام فیلد عکس")' /></a>
</ItemTemplate>
</asp:Repeater>

arash ka
سه شنبه 23 اردیبهشت 1393, 13:15 عصر
<asp:Repeater ID="rptImages" runat="server">
<ItemTemplate>
<a href= "css/images/port-2.gif" data-lightbox="img/image-1" data-title= label3 >
<asp:Image ID="Image6" runat="server" ImageUrl='<%#Eval("نام فیلد عکس")' /></a>
</ItemTemplate>
</asp:Repeater>



دوست عزیز ممنون ولی من می خوام لینکی که توسط href باز میشه داینامیک بشه.
من لینک عکس رو (image url) با کد سی شارپ داینامیک نوشتم ولی نمیدونم href رو چجوری داینامیک کنم

meisam12
سه شنبه 23 اردیبهشت 1393, 14:45 عصر
خوب از همین روش می توانی به صورت داینامیک استفاده کنی:

در MarkUp:

<asp:Repeater ID="rptImages" runat="server">
<ItemTemplate>
<a href='<%#Eval("imageurl")%>' data-lightbox="img/image-1" data-title="label3">
<asp:Image ID="Image6" runat="server" ImageUrl='<%#Eval("imageurl")%>' />
</a>
</ItemTemplate>
</asp:Repeater>


و در Page_Load صفحه ی مورد نظرت کد زیر را بنویس:

rptImages.DataSource=//همون کدی که به صورت داینامیک لینک را تولید می کند
rptImages.DataBind();


یک نمونه پروژه کوچک هم گذاشتم.

arash ka
سه شنبه 23 اردیبهشت 1393, 15:37 عصر
ممنون دوست عزیز ولی من عکسامو توی یک لیترال باز می کنم
ی لیترال گذاشتم که همه عکسای موجود توی یک فولدر رو نشون میده

چکار کنم که توی این لیترال روی هر عکسی که کلیک میشه باز شه؟؟ دقیقا مثل همین پروژه ای که گذاشتید می خوام ولی توی لیترال عکس ها لود می شوند.

از این کد استفاده می کنم برای نمایش عکس ها

<a href= "images/img/6.jpg" data-lightbox="img/image-1" ><asp:Literal ID="Literal1" runat="server"></asp:Literal></a>

حالا می خوام href با url هر عکس یکی باشه

meisam12
سه شنبه 23 اردیبهشت 1393, 16:38 عصر
چه طوری لیترال را پر می کنی با کد یا با روش دیگر؟

arash ka
سه شنبه 23 اردیبهشت 1393, 16:51 عصر
چه طوری لیترال را پر می کنی با کد یا با روش دیگر؟


از این کد استفاده می کنم


string path = Server.MapPath(".") + "\\Gallary\\";
string[] files = System.IO.Directory.GetFiles(path);
string tags="";
foreach (string f in files)
{
string ff = System.IO.Path.GetFileName(f);
tags += "<img height = 300 width=300 src='Gallary/{0}' />\n";
tags = string.Format(tags, ff);
}

Literal1.Text = tags;

meisam12
سه شنبه 23 اردیبهشت 1393, 17:21 عصر
کدت را به شکل زیر تغییر بده :

در markup

<asp:Literal ID="Literal1" runat="server" ></asp:Literal>


در Code behind:

string path = Server.MapPath(".") + "\\Gallary\\";
string[] files = System.IO.Directory.GetFiles(path);
string tags = "";
foreach (string f in files)
{
string ff = System.IO.Path.GetFileName(f);
tags += "<a href=\"Gallary/{0}\" data-lightbox=\"img/image-1\" /> <img height = 300 width=300 src='Gallary/{1}' />\n";
tags = string.Format(tags, ff,ff);
}

Literal1.Text = tags;

arash ka
چهارشنبه 24 اردیبهشت 1393, 01:09 صبح
کدت را به شکل زیر تغییر بده :

در markup

<asp:Literal ID="Literal1" runat="server" ></asp:Literal>


در Code behind:

string path = Server.MapPath(".") + "\\Gallary\\";
string[] files = System.IO.Directory.GetFiles(path);
string tags = "";
foreach (string f in files)
{
string ff = System.IO.Path.GetFileName(f);
tags += "<a href=\"Gallary/{0}\" data-lightbox=\"img/image-1\" /> <img height = 300 width=300 src='Gallary/{1}' />\n";
tags = string.Format(tags, ff,ff);
}

Literal1.Text = tags;



دوست عزیز ممنون
درست شد
فقط ی مشکل کوچیک داری!
عکس آخرو 5 بار نشون میده توی گالری!
به نطر شما مشکل چیه؟

meisam12
چهارشنبه 24 اردیبهشت 1393, 11:07 صبح
داخل متغیر files چند عنصر داری؟