Har gjort en gästbok i ASP.NET med möjlighet för användaren att använda smileys. Tecken för dessa (ex.vis ":)") sparas i en Accessdatabas i ett fält som heter [INLAGG]. Kan du inte precis innan du sparar i db köra Replace på alla dina smileys-kombinationer med en <img.... tagg för respektive. Sedan låter du bara Repeatern skriva ut resultatet i vanlig ordning? Jag håller definitivt med föregående talare. Spara inte själva kombinationen ":-)" utan gör om dem till img-taggar. Jag håller inte med föregående talare då om du nån gång vill byta ut ex. sökvägen el byta bilden så måste du ändra på alla platser i databasen med. Tack för hjälpen. Det fungerar nu alldeles förträffligt. Ändrade bara lite i koden då jag använder VB. Man får tacka för att ditt inlägg precis löste ett annat problem som jag haft med repeaters :) Jag skulle vilja formattera om en del inlagda saker och detta var ett bra sätt att göra det på....Visa Smileys med hjälp av en Repeater kontroll?
Jag använder sedan en repeater för att visa inläggen. Min fråga är hur jag kan omvandla smiley-tecknen till smileybilder. Jag vet att man måste ersätta tecknen med smileybildernas url men hur gör man det på bästa sätt?
Tacksam för hjälp
jalleSv: Visa Smileys med hjälp av en Repeater kontroll?
Eller så kan du mata en javascript array som du sedan kör replace i efteråt innan du låter javascriptet köra samma replace innan det skriver ut din gästbok...
/JoacimSv: Visa Smileys med hjälp av en Repeater kontroll?
Alternativet är att du gör det när du ska binda datat till repeaterkontrollen. Skapa en ny datakälla, t ex en datatable, tanka över den data du vill visa upp och för den kolumn som är aktuell [INLAGG] så kör du en replace.
//Mikael.NETSv: Visa Smileys med hjälp av en Repeater kontroll?
Det bästa är att köra en replace när du presenterar datan. Om du lägger funktionen i en class typ så här
<code>
public string Smiley(string inlagg)
{
return inlagg.Replace(":)", "<img src='happy.gif' border='0'>");
}
</code>
för att sedan göra följande i repetern
<code>
<%# Smiley(DataBinder.Eval(Container.DataItem, "inlagg", "{0}")%>
</code>
mvh icaaqSv: Visa Smileys med hjälp av en Repeater kontroll?
JalleSv: Visa Smileys med hjälp av en Repeater kontroll?
Joacim