Entfernen von Tabellen- und Span-Tags aus asp: DataList

7

Eine DataListis wird mit <table> oder <span> Tags gerendert, was ich nicht will.

Ich habe RepeatLayout="Flow" eingestellt, aber das gibt mir immer noch Spannweiten. Ich habe RepeaterDirection="Horizontal" eingestellt, aber das gibt mir immer noch die Tabellen.

Wie kann ich einen einfachen Datenlogger ohne all die Spannen \ Tabellen erhalten?

%Vor%

Vielen Dank im Voraus!

    
NATTO 04.12.2010, 16:36
quelle

5 Antworten

12

Brauchen Sie überhaupt eine DataList Kontrolle? Sie haben die volle Kontrolle über den gerenderten HTML-Code, indem Sie Repeater verwenden oder einfach nur Ihre Objekte durchlaufen und die Ausgabe manuell rendern.

    
David 04.12.2010, 16:41
quelle
6

Manchmal können Sie Repeater nicht verwenden, da DataList zusätzliche Möglichkeiten bietet (zB Aktualisieren der Datenbank über UPDATE- und DELETE-Befehle, direktes Arbeiten mit der asp: DataSource).

Wenn Sie also DataList noch verwenden müssen, es aber vermeiden wollen, dass es html ist, können Sie darüber ein bisschen jQuery machen, wie ich es gemacht habe.

aspx-Code:

%Vor%

Dies erzeugt HTML wie folgt:

%Vor%

Offensichtlich gibt es 2 Span-Tags, die Sie nicht brauchen. Um sie zu entfernen, können Sie jQuery-Skript auf der Seite hinzufügen.

%Vor%

In meinem Fall wollte ich eine ungeordnete Liste erstellen, die ich kontrolliere. Aber wie auch immer, Sie können es auf andere Weise tun, indem Sie den HTML-Code in DataList ändern und das richtige Element in jQuery (.item) targetieren.

Ich hoffe, dass dies jemand anderen hilft, der DataList-Funktionalität benötigt und dies nicht mit Repeater tun kann.

    
DusanV 06.12.2011 07:51
quelle
3

Ich denke, Sie finden es möglicherweise einfacher, Repeater , die es Ihnen erlauben wird, Ihr eigenes Markup zu setzen.

Erstellen Sie im Grunde einen ASP-Repeater, binden Sie Ihre Daten auf dieselbe Weise wie der Datenlistenersteller und erstellen Sie Ihr Markup im Tag "itemtemplate". (Warnung, dass dies aus dem Speicher stammt - ich bin auf meinem Laptop unterwegs, also habe kein Visual Studio, um die Syntax zu überprüfen.)

%Vor%

Sie erhalten nur das Markup, das Sie in die Vorlagen eingegeben haben, sonst nichts. Sie können die Kopf- und Fußzeile überspringen, wenn Sie sie nicht benötigen. Und wenn Sie überhaupt kein Markup möchten, haben Sie einfach keine Tags in Ihrer Vorlage, die Daten werden als einfacher Text ausgegeben.

    
Andrew M 04.12.2010 16:44
quelle
0

Ich habe diesen Fehler erhalten, weil ich <Table> in der Kopfzeile und </table> in den Fußzeilenvorlagen verwendet habe. Ich entferne das, und ich habe eine ganze Tabelle für jede Vorlage verwendet und keine unerwünschten Tags mehr erhalten.

    
Mikecrosoft 31.08.2013 05:09
quelle
0

Da dies eines der besten Ergebnisse bei Google für dieses Problem ist, können Sie Folgendes tun:

Wenn Sie das Datlist Control benötigen, müssen Sie die Eigenschaft RepeatLayout="Flow"

setzen

Anwser wurde hier gefunden: Ссылка

    
Doytoend 08.05.2014 08:55
quelle

Tags und Links