Frage

Ich will einen asp:LinkButton verwenden, da es wie ein Link sieht, aber auch serverseitigen Click-Handler hat.

Aber der Web-Server scheint nicht in der Lage zu erkennen, ob Javascript auf dem Client deaktiviert ist, und macht nicht in einen Mechanismus, der noch funktioniert.

Ist es möglich, eine Verbindung zu haben, wie ein Link aussieht, hat aber serverseitige OnClick Ereignishandler?


Antwort

Die Antwort ist nein, aber unten sind einige Abhilfe Ideen. Akzeptiert das mit Nicht-Null-up-Stimmen.

War es hilfreich?

Lösung

Sie können CSS verwenden, um eine Schaltfläche, um Stil wie ein Link zu sehen, aber das wird sehr viel Browser abhängig sein, abhängig von der CSS-Implementierung.


Edit: Ich fühle mich gezwungen, meine Antwort zu vervollständigen, da es angenommen worden ist

.

Ein asp:LinkButton macht auf einen HTML-Link, und als solche kann nicht Post , um eine Web-Seite; kann aber nur machen bekommen Anfragen. die Post, um dieses MS verwenden JavaScript, um Aktion zu arbeiten. Dies ist jedoch nicht möglich, wenn Javascript deaktiviert ist.

asp:Button und asp:ImageButton sind unterschiedlich. Sie tragen vor, das HTML-Formular auf einer Webseite durch die Veröffentlichung (oder erhalten Sie über die Form Attribute abhängig) von echten HTML-Formularelemente verwenden. So werden diese ohne JS Intervention arbeiten.

Einige Browser erlauben CSS Styling eine Schaltfläche, um Stil wie ein Link zu sehen, und als solche das verwendet werden kann, um das Problem zu arbeiten.

Andere Tipps

Nur eine Idee:

Render eine Eingabe-Taste und wählen Sie Javascript in einen Link zu ändern. Die Schaltfläche würde für Nicht-JavaScript-fähigen Browser arbeiten und ein Link für diejenigen, die haben Javascript.

Mit etwas in ASP.Net ich in der Regel die Kontrolle machen würde, zusammen mit einer „zugänglich Kontrolle“, die mit JavaScript versteckt. Also in diesem Fall wäre es eine Linkbutton machen (standardmäßig ausgeblendet über Stile), und eine normale Taste, mit einigen Javascript, um die Taste verstecken registriert und zeigen den Linkbutton.

Es ist eine recht häufig Abhilfe für ASP.Net-Steuerelement, das ohne Javascript nicht schön spielen, oder wenn Sie „Autopostback“ ohne Javascript benötigen.

Es gibt keinen INPUT-Typen, die wie ein Link aussehen werden. Wenn Sie einen Link verwenden möchten eine INPUT-artige Aktivität auf einer Webseite ausführen, wird es auf die gleiche Seite navigieren, die Sie auf sind.

Sie können ein Query-String-Variable mit dem Link gehen und darauf reagieren. Es wird nicht genau wie ein Postbacks handeln, sondern es wird nur auf die gleiche Seite navigieren, die Sie auf sind.

Nur für das Protokoll, was Sie fragen für möglich.

Sie müssen die Steuerung so konfigurieren:

<asp:LinkButton ID="lbtnRequestReview" Text="[ Request Plan Review ]" OnCommand="lbtnRequestReview_Command" CommandName="cmd" CommandArgument="0" CausesValidation="false" runat="server"/>

und setzen diese in der Code-behind:

protected void lbtnRequestReview_Command(Object sender, CommandEventArgs e)
        {
           //...
        }

Hier finden Sie ausführlichere Informationen hier .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top