2010-11-19 2 views
0

Wenn ich in aspxWie kann ich die Reihenfolge <tr> Tags in der Tabelle C# ändern?

<table id="table" > 
    <tr id="first" runat="server"> blablabla> 
     <td></td> 
    </tr> 
    <tr id="second" runat="server"> 
     <td></td> 
    </tr> 
</table> 

Wie kann ich um vom zweiten auf den zuerst in den Code ein Tisch hinter ändern?

Ich habe versucht, tr mit Platzhaltern zu umhüllen und sie entsprechend zu verstecken/anzuzeigen, aber es erlaubt mir nicht, dies zu tun, da ich doppelte IDs in diesen Zeilen bekomme. Und ich kann Javascript nicht dafür verwenden ..

+0

Sie können tatsächlich Javascript verwenden, um das DOM nach dem Laden der Seite zu ändern. –

+0

@Mike Atlas - er meint wahrscheinlich, dass er nicht erlaubt ist. – Oded

+0

@Mike Atlas können Sie ein Beispiel geben? –

Antwort

3

Wie Sie auch nicht tr oder table als Server-seitigen Code (unter Verwendung eines runat="server" Attribut) festgelegt haben, sie auf den Code nicht sichtbar sind hinter und es kann nicht die Reihenfolge ändern .

In aspx:

<table id="table" runat="server"> 
    <tr id="first" runat="server"> 
     <td>blablabla</td> 
    </tr> 
    <tr id="second" runat="server"> 
     <td>&nbsp;</td> 
    </tr> 
</table> 

In Code hinter:

var row = table.Rows[0]; // get reference to first row 
table.Rows.Remove(row); // remove it 
table.Rows.Add(row);  // Add again, at the end (default) 
+0

Ich stelle das, sorry. Wie kann ich die Reihenfolge auf der Serverseite ändern? –

+0

@Downvoter - vorsichtig erklären? – Oded

+0

@Stewie Griffin - Antwort aktualisiert, mit Beispiel. – Oded

2

Da es sich um statischen Markup eher als eine serverseitige Steuerung (keines der Tags zu runat="server" gesetzt ist), die Server-Seite C# -Code kann sie nicht ändern.

Verwandte Themen