20. februar 2007 - 16:41
#4
Her er koden fra min Item_command:
denne sætning(descArrOther['" + fromUserid + " " + userId + "']) sætter teksten henter teksten fra javascrtip arrayet. og jeg bruger noget dhtml til at lave hover effekt på mine hyperlinks der også er i repeateren. Dvs. jeg ved hvordan jeg henter teksten fra arrayet, jeg ved bare ikke hvordan jeg kan sørg for at min div også kan vise teksten.
protected void NetworkListRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.DataItem == null) return;
Guid userId = (Guid)e.Item.DataItem;
MembershipUser user = Membership.GetUser(userId);
ProfileCommon profile = Profile.GetProfile(user.UserName);
string fromUserid = Request.QueryString["UserId"];
if (IsUserLookingAtOwnProfile != null)
{
if (ActivateComment && IsUserLookingAtOwnProfile)
{
e.Item.FindControl("divLinkComment").Visible = true;
}
}
ContentRightBoxWithImage box = (ContentRightBoxWithImage)e.Item.FindControl("ProfileBox");
HtmlAnchor anchor = (HtmlAnchor)box.FindControl("HyperLinkViewProfile3");
HyperLink hpl = (HyperLink)box.FindControl("HyperLinkViewProfile2");
HyperLink hpl2 = (HyperLink)box.FindControl("HyperLinkViewProfile");
Label lblTeaser = (Label)e.Item.FindControl("divdescribtionTeaser");
//Link has not been commented
if (mineLinks)
{
e.Item.FindControl("imgKommenteret").Visible = true;
anchor.Attributes.Add("onmouseover", "ddrivetip(descArr['" + fromUserid + " " + userId + "'],'#7bc5e6',300)");
anchor.Attributes.Add("onmouseout", "hideddrivetip()");
hpl.Attributes.Add("onmouseover", "ddrivetip(descArr['" + fromUserid + " " + userId + "'],'#7bc5e6',300)");
hpl.Attributes.Add("onmouseout", "hideddrivetip()");
hpl2.Attributes.Add("onmouseover", "ddrivetip(descArr['" + fromUserid + " " + userId + "'],'#7bc5e6',300)");
hpl2.Attributes.Add("onmouseout", "hideddrivetip()");
}
else if (andresLinks)
{
e.Item.FindControl("imgKommenteret").Visible = true;
anchor.Attributes.Add("onmouseover", "ddrivetip(IsEmty(descArrOther['" + fromUserid + " " + userId + "']),'#7bc5e6',300)");
anchor.Attributes.Add("onmouseout", "hideddrivetip()");
hpl.Attributes.Add("onmouseover", "ddrivetip(IsEmty(descArrOther['" + fromUserid + " " + userId + "']),'#7bc5e6',300)");
hpl.Attributes.Add("onmouseout", "hideddrivetip()");
hpl2.Attributes.Add("onmouseover", "ddrivetip(IsEmty(descArrOther['" + fromUserid + " " + userId + "']),'#7bc5e6',300)");
hpl2.Attributes.Add("onmouseout", "hideddrivetip()");
}
else if (ActivateComment && (!mineLinks))
{
e.Item.FindControl("imgKommenteret").Visible = true;
anchor.Attributes.Add("onmouseover", "ddrivetip(stringConcat(descArr['" + fromUserid + " " + userId + "'],descArrOther['" + fromUserid + " " + userId + "']),'#7bc5e6',300)");
anchor.Attributes.Add("onmouseout", "hideddrivetip()");
hpl.Attributes.Add("onmouseover", "ddrivetip(stringConcat(descArr['" + fromUserid + " " + userId + "'],descArrOther['" + fromUserid + " " + userId + "']),'#7bc5e6',300)");
hpl.Attributes.Add("onmouseout", "hideddrivetip()");
hpl2.Attributes.Add("onmouseover", "ddrivetip(stringConcat(descArr['" + fromUserid + " " + userId + "'],descArrOther['" + fromUserid + " " + userId + "']),'#7bc5e6',300)");
hpl2.Attributes.Add("onmouseout", "hideddrivetip()");
// lblTeaser.Attributes.Add("onmouseover", "descArr['" + fromUserid + " " + userId + "']");
lblTeaser.Attributes.Add("OnInit", "ddrivetip(stringConcat(descArr['" + fromUserid + " " + userId + "'],descArrOther['" + fromUserid + " " + userId + "']),'#7bc5e6',300)");
}
//}
//txt.Visible = false;
box.ImageUrl = profile.Picture;
if (profile.Type == ProfileType.Personal)
{
box.Link = "~/" + profile.ProfileName + System.Configuration.ConfigurationManager.AppSettings["ProfileView.URLSuffix.Profile"];
box.Name = profile.Personal.FirstName + " " + profile.Personal.LastName;
box.Title = profile.Personal.JobTitle;
box.Company = profile.Personal.Company;
}
else
{
box.Link = "~/" + profile.ProfileName + System.Configuration.ConfigurationManager.AppSettings["ProfileView.URLSuffix.Profile"];
box.Name = profile.Company.Name;
box.ImageUrl = profile.Picture;
box.Title = profile.Company.Website;
}
box.IsOnline = user.IsOnline;
}
20. februar 2007 - 22:57
#5
Dit javascript kører ude i browseren, og din itemdatabound kører på serveren, og der kan du ikke databinde mod et clientside array... Det eksisterer jeg først når koden kører i browseren.
Men hvis du på serveren har de data du skal bruge i dit clientside array - kan du benytte de samme data i forbindelse med databiningen.
Mvh