Hallo pl,
wer auch immer da geschrieen hat. Es ist ja nicht auszuschließen, dass sich die Meinung zum richtigen Gebrauch von class verändert hat. Damals gab's vielleicht auch noch keine semantischen HTML Elemente, je nach dem, wie lang das her ist.
Das class-Attribut beschreibt, so wie ich das verstanden habe, Business-Aspekte der Webseite, um zu markieren, welches Element welche Bedeutung hat, wenn das semantische Markup nicht ausreicht. Deswegen würde ich das nicht als falsch ansehen, aber dazu könnten sich mal die HTML-Päpste hier äußern. Die HTML Living Spec sagt: "authors are encouraged to use values that describe the nature of the content, rather than values that describe the desired presentation of the content.", und da finde ich eine class updatePanel durchaus nicht daneben.
Die Art, wie ein Ajaxifizierer seine Updatebereiche findet, ist aber ein Implementierungsdetail. Wenn es keine class sein soll, gibt es Alternativen. Irgendwas muss man ja tun, um die Bereiche zu markieren, die als Updatepanel dienen sollen. Denkbar wäre die Verwendung eines custom-Element <update-panel>
, oder ein Attribut data-updatepanel="panel-id"
.
UpdatePanels in ASP.NET sind schon relativ alt (2005), und ich habe mir nie angeschaut wie das HTML aussieht, das sie rendern. Aber - nur für dich - hab ich mein Visual Studio mal angefeuert und eine Testpage mit Updatepanel gemacht. ASP.NET macht es ohne Klassen, statt dessen mit einem (generierten) Script-Block, der das Updatepanel explizit an Hand seiner ID einem PageRequestManager bekannt macht. Das ist eine Mischung aus generischem und spezifischem Code. Entscheidend ist auch bei ASP.NET: Außer der Registrierung ist der übrige Code komplett unabhängig vom Business. Und aus Entwicklersicht ist es rein deklarativ, das Script wird von der Runtime generiert. Ohne ASP.NET hast Du keine Runtime und kannst darum kein Script generieren, darum muss man die Registrierung dann entweder von Hand programmieren oder deklarativ - wie von mir vorgeschlagen - steuern.
Rolf
sumpsi - posui - clusi