Hej, Satsa på att köra med en repeater (<asp:repeater>), då kan du enkelt lägga in den js-kod du behöver. du kan ju tex lägga en asp:panel under boken som inledningsvis är tom (tar ingen plats). Sedan i code behind bygger du den html som skall visa informationen tex en tabell. sedan sätter du ut det i panel objektet mha följande exempel : Ja, det var ju idé. Jag har ett liknande och löst det med en datalist. Jag har en lista med poster med tex kontor och visar i första läget bara kontorets namn i datalistan, Har en knapp som "fäller ut" i editeringsläget, där jag visar alla fält som kan editeras, tex adress, telefon mm. Tack! Det verkar ju ännu smidigare! Så, nu återkommer jag... Har du testat att använda en asp-table och skriva allting codebehind? om jag inte är helt fel på det så måste du även skapa <table> i din HeaderTemplate samt </table> i din FooterTemplate (som du inte har med här). Hej, Ok, men hur kommer jag åt mina celler, lablar, ikoner därifrån?Lista resultat med Javascript?
Lite dålig rubrik kanske, men kom inte på något bättre...
Jag är ganska ny på .Net skall sägas till att börja med.
Vi håller på med en applikation som är ett register på olika böcker, var dom arkiveras, vem som har dom, vem som skrivit dom samt en massa annan metadata.
Nu vill jag lista dessa rakt upp o ner bara. För varje rad skall man kunna klicka för att få mer information om den aktuella boken.
Problemet är att man skall INTE komma till en ny sida, utan information skall öppnas precis nedan för den aktuella boken.
Raden skall alltså expanderas med ett Javascript(antar jag att man löser det).
Javascriptet är inga problem, jag har gjort samma sak i "gamla" asp, utan snarare hur man listar det på bästa sätt.
Jag har provat en vanlig datagrid, men det verkar svårt att åstadkomma det jag vill med en sån?
Någon som vet hur man gör sånt här enklast o bäst?
Helst vill jag ha all min kod i code-behinden om det går.
Om du har något tips har du även kanske lite kod exempel eller någon länk där man kan läsa mer om det??
Gick detta att förstå...?
/JockeSv: Lista resultat med Javascript?
Repeater är som en sorts mall; du lägger in hur datan ska formateras, ev. knappar som ska visas etc. Sedan databinder du din datakälla mot den lite snyggt ;)Sv: Lista resultat med Javascript?
Dim objpanel As LiteralControl = CType(Panel1.Controls.Item(0), LiteralControl)
objpanel.Text = sAddHtmlSv: Lista resultat med Javascript?
Men själva böckerna, listan alltså. Skall den vara en repeater, eller kan jag ha en datagrid? Jag måste ju kunna klicka på raden("bokraden") för att visa panelen?
/JockeSv: Lista resultat med Javascript?
Nu behöver du ju inte ha editerbara fält, men principen som jag har ville jag dela med mig av...
I min datalist så har jag en del som syns som din lista du vill ha och den html ligger i
<itemtemplate>
I den delen visar jag alltså enbart kontorets namn
Sedan har jag det som skall visas när jag klickar en knapp (editläget) det som expanderar, och det ligger i
<edititemtemplate>
I min <asp:datalist>-tag har jag oneditcommand="DoItemEdit"
I koden för att visa innehållet i <edititemtemplate> kallar jag sedan DoItemEdit
<code>
Sub DoItemEdit(ByVal objSource As Object, ByVal objArgs As DataListCommandEventArgs)
' Denna proc används för att växla till Editläge
'set the SelectedIndex property of the list to -1 to "unselect" it
DataList.SelectedIndex = -1
'set the EditItemIndex property of the list to this item's index
DataList.EditItemIndex = objArgs.Item.ItemIndex
BindDataList() 'bind the data and display it
End Sub
</code>Sv: Lista resultat med Javascript?
Skall prova detta senare. Vi har inte börjat koda skarpt än, jag håller på att "förbereda" mig lite. Jag vet exakt hur applikationen skall se ut och fungera.
Jag kanske återkommer om några dagar när jag provat...:)
/JockeSv: Lista resultat med Javascript?
Jag försöker göra en datalist som skall innehålla ett par kolumner, säg 2 st just nu.
Då skall listan först ha rubriker(NAMN och START DATUM) och sedan där under lista alla träffar.
Jag förstår bara inte hur jag gör flera kolumner i en datalist?
Så här har jag provat:
<code>
<asp:DataList id="dlAllLabBooks" runat="server" Width="740" CellPadding="3" CellSpacing="0">
<HeaderTemplate runat="server">
<td>NAMN</td><td>START DATUM</td>
</HeaderTemplate>
<ItemTemplate runat="server">
<td><%#DataBinder.Eval(Container.DataItem,"name")%></td>
<td><%#DataBinder.Eval(Container.DataItem,"start_date")%></td>
</ItemTemplate>
<AlternatingItemTemplate runat="server">
<td colspan="2" background="images/bild1.gif"></td>
</AlternatingItemTemplate>
</asp:DataList>
</code>
Så har jag alltså provat eftersom det är så jag tänker att resultatet skall bli....men det funkar inte så bra. Jag får ut ett resultat men det blir inga snygga kolumner.
Jag vill ju ha både rubriker o själva listan i samma html-tabell i slutändan.
Hur gör man kolumner i en datalist?
Sen när jag fått detta att fungera skulle helst vilja ha det i code behinden, hur gör man då?
Har läst i en bok jag har, men där listas bara resultatet med <br> i mellan varje post och inga tabeller används. Det funkar för mig, men det är ju inte så snyggt....
Finns det någonstans på nätet man kan läsa lite mer om datalister, med lite olika exempel på hur man kan anpassa dom?
/Jocke
P.S. Första .net applikationen som ni märker...:)Sv: Lista resultat med Javascript?
Sv: Lista resultat med Javascript?
Sv: Lista resultat med Javascript?
Japp, det stämde som du säger Andreas! Tack!!
HTML koden som genereras blir korrekt, däremot klagar Visual Studio, men det struntar jag i....
Jag valde en <b>repeater</b> istället, men den verkar funka ungefär samma när det gäller tabeller.
Jag skrev ett annat inlägg som ledde fram till samma resultat, nämligen en repeater. Det var egentilgen intt meningen från början för det var två olika frågor(men har blivit samma...).
Så jag passar på att fråga det här också. Hur skriver man logik för att visa olika saker, t ex olika ikoner, olika länkar, beroende på vem som är inloggad osv..
Då menar jag VAR skriver jag logiken? Blir detta i codebehinden? I så fall hur hittar jag en speciell cell jag vill validera?
Eller skriver man logik i html-koden?
/Jocke
Här är mitt andra inlägg:
[Lägga till en rad i en datagrid]Sv: Lista resultat med Javascript?
Jag förstår inte hur detta går till, så ett litet kodexempel tar jag emot tacksamt....:)
/Jocke