PDA

View Full Version : مشکل با Repeater



Silverboy
سه شنبه 16 فروردین 1384, 01:08 صبح
با سلام به همه دوستان
چند تا سوال داشتم که امیدوارم بتونید کمکم کنید اون ها رو پشت سر هم توی topic های مختلف میزارم تا قاطی پاتی نشند!
در ضمن من اکثر topic های این قسمت رو خوندم اگه می بینید که موضوعی تکرااریه علتش اینه که ازش سر در نیاوردم

و اما اولین مشکل :
احتمالا شما هم از syntaxای شبیه <%# DataBinder.Eval(Container.DataItem, "title") %>
برای قرار دادن fieldهای database در بین کد های htmlاستفاده کردین
مشکلی که من دارم اینه که وقتی این کار رو میکنم و می خوام وارد نمای designبشم با یکerror مواجه میشم که میگه باید این جملات رو داخل single quote
بگذاری و نمیگذارد که به نمای design بروم و وقتی این کار رو میکنم خود single quote ها هم در صفحه نشان داده می شوند (در حالی که من همچین چیزی رو نمیخوام)
در ضمن بعضی وقت ها هم خود به خود این جملات رو به یک سری script تبدیل می کنه که نه تنها درست کار نمیکنه بلکه من هم هیچی ازش سر در نمی یارم
اگه میتونید راهنمایی ام کنید ممنون میشم :D

Behrouz_Rad
سه شنبه 16 فروردین 1384, 14:39 عصر
قبلا با این مورد برخورد داشتم.
دستور <%# DataBinder.Eval(Container.DataItem, "title") %> حتما باید بین دو علامت تک کوتیشن (') قرار گیرد.
به عنوان مثال اگر قصد چاپ مقادیر Repeater برای ایجاد یک لینک را دارید، باید به شکل زیر عمل کنید:


<a href='MyPage.aspx?&id=<%# Container.DataItem ( "ID" )%>'><%# Container.DataItem( "MyField") %></a>

یا به عنوان مثالی دیگر با استفاده از جاوا اسکریپت:


<a onclick='javascript:OpenMessagesWindow("MyPage.aspx?ID=<%# Container.DataItem ( "ID" )%>") ; return false;' href='MyPage.aspx?ID=<%# Container.DataItem ( "ID" )%>' target="_blank"></a>

که البته کد فوق بیشتر برای ایجاد قسمت نظر خواهی در مورد مطالب به کار می رود، همانند نظر خواهی در وبلاگ های پرشین بلاگ.

البته برای چاپ مقادیر به شکل ساده نیازی به تک کوتیشن نیست. (مورد بالا در ترکیب با تگ های HTML صدق می کند)
در صورتی که مشکلتون حل نشد، کدهای قسمت Repeater رو در اینجا بنویسید.
موفق باشید.
:wise1:

Silverboy
یک شنبه 21 فروردین 1384, 13:45 عصر
ممنون آقا بهروز خیلی بهم کمکم کرد
کلی حالمو گرفته بود
دستتون درد نکنه :D