Bedingt, ohne einen block von html-in ASP.NET WebForms
Dies ist nur eine einfache Frage: wie kann ich ausschließen, ein Stück html-Code auf eine aspx web-Formular wird vom server zurückgegeben wird, basiert auf einer server-side-Auswertung?
Ich Rede nicht von einem Steuerelement insbesondere da Sie dazu neigen, die Sichtbaren Parameter, sondern nur einige raw-html.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einige Leute Objekt mit der folgenden Methode, aber die eine, die niemand hat geantwortet und ich habe das Gefühl, dass es sollte gezeigt werden, wie eine option. Es kann praktisch sein, wenn Sie ordnungsgemäß verwendet.
Diese Arbeit zu machen, hätte man ein public-oder protected-Eigenschaft auf Ihrer Seite genannt, ShowLabel, die einen booleschen Wert zurückgibt.
runat="server"
mit einemID
zu setzen, es ist Tabelleneigenschaften auf false in der code-behind-Datei.Setzen Sie ein
PlaceHolder
- Steuerelement, um den code. Es nicht machen jeden code für sich selbst (wie einPanel
zum Beispiel), damit es nicht interfer mit dem html-code, wenn es sichtbar ist.Wenn Sie die
Visible
Eigenschaft desPlaceHolder
auf false, wird der code innerhalb derPlaceHolder
wird nicht gerendert werden, die auf die Seite.Durch Sie/legen Sie es in einem versteckten div oder panel (bei Verwendung von div, mark runat=server, sowohl render-als div). Dann machen die div/panel sichtbar oder halten Sie es versteckt, je nach Ihrer Bewertung.
Können Sie wickeln Sie Ihre html innerhalb einer asp-panel, und setzen Sie das Attribut visible des Panels auf der server-Seite.
Sonst, Html ist eine client-Seite müssen Sie javascript verwenden, um zu manipulieren. Sie können machen einige javascript in Ihrem server-side-code, aber das ist normalerweise keine gute Idee.