2017-04-18 2 views
0

Ich habe verschiedene Beispiele gesehen, die ein onClientClick verwenden, um Postback zu vermeiden. Allerdings will ich das nicht. Ich möchte die Links der Linkbuttons innerhalb des vb.net-Codes enthalten und verhindern, dass die Seite beim Anklicken ein Postback ausführt. Der Grund dafür ist, wenn meine Seite geladen wird, setzt das default show() und hide() div Anzeigen wieder, die den aktuellen Punkt des Benutzers auf der Seite verliert, wenn das neue Fenster öffnet. Wie kann ich dies tun, ohne dass die Hauptseite zurückgesetzt wird?onClick vb.net-Funktion, aber Postback für JavaScript verhindern

Ich habe versucht OnClientClick="javascript:return false;" aber verhindert Benutzer von Linkbutton klicken.

Ich habe auch AutoPostBack = "false" versucht und es hat nicht funktioniert

andere Möglichkeiten als auch Versuchte. ... kein Glück ... einschließlich Hyperlink zu versuchen, aber diese gaben mir auch Probleme.

<asp:linkbutton ID="aCapShip" runat="server" OnClick="aCapShip_Click" style="text-decoration:none;" > 
    <i class="fa glyphicon glyphicon-plane fa-lg"></i> Cap Shipping <!--<span class="arrow"></span>-->        
</asp:linkbutton> 

JavaScript

$(document).ready(function() { 

     $("#shipping").show(); 
     $("#Ul2List").hide(); 
     $("#manufacture").hide(); 
     $("#Ul1List").hide(); 
     $("#reList").hide(); 

     ......... 

VB.net

Protected Sub aCapShip_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
    Dim url As String = "http://dummyinfo/dummyinfo/dummyinfo.aspx" 
    Process.Start(url) 

End Sub 
+0

Sie haben einen Postback, um den vb Code auf dem Server von einer Webformular Kontrolle haben zu laufen. ansonsten kannst du eine url mit jquery/javascript direkt mit standard html elementen aufrufen (kein 'runat: server' im element) – ps2goat

+0

also gibt es eh nur das JavaScript show() und hide() einmal auszuführen? @ ps2goat – narue1992

+0

Sie können in Update-Panels für eine einfache Implementierung suchen. Dies verwendet immer noch viewstate, aber es ist möglicherweise kein Problem für Sie. Ein '' erlaubt Ihnen, Elemente zu umbrechen, und dann können diese Elemente Postbacks ausführen, ohne dass die Seite vollständig neu geladen wird. Hier ist ein Beispiel, aber es ist möglicherweise nicht auf dem neuesten Stand mit der Version von .NET, die Sie verwenden: https://msdn.microsoft.com/en-us/library/bb398867.aspx – ps2goat

Antwort

0

Also meine Arbeit um ist folgende:

VB.net

If Not Page.IsPostBack Then 
     startUp() 
End If 

Public Sub startUp() 
    Response.Write("<SCRIPT LANGUAGE=""JavaScript"">startSort()<" & "/" & "SCRIPT>") 
End Sub 

JavaScript

$(function startSort() { 
     $("#shipping").show(); 
     $("#Ul2List").hide(); 
     $("#manufacture").hide(); 
     $("#Ul1List").hide(); 
     $("#reworkList").hide(); 
}); 
+0

sieht aus wie dies immer noch nicht t arbeiten ... – narue1992

Verwandte Themen