ASP.NET Rufen Sie Code-Behind-Funktion Von Javascript

Machte ich eine webmethod, dass ich versuche in javascript aufrufen, aber es scheint nicht zu brennen. Ich packte den ausgewählten index-Wert aus einem Listenfeld innerhalb eines usercontrol und die übergabe an meine webmethod zum löschen der ausgewählten Benutzer. Ich habe mir auf unzähligen Seiten und habe keine Lösung gefunden. Ich bekomme keine Fehler, alles andere scheint zu funktionieren. Ich habe versucht, den Aufruf dieser Funktion aus einer public sub in der code-behind-auch nicht mit Glück. Alle Vorschläge werden sehr geschätzt!

<%@ Page Language="VB" AutoEventWireup="false" ClientIDMode="Static" CodeFile="Edit.aspx.vb" Inherits="_Default" %><%@ Register src="AdminEdit.ascx" tagname="AdminEdit" tagprefix="uc1" %>
<%@ Register TagPrefix="asp" Namespace="AjaxControlToolkit" Assembly="AjaxControlToolkit"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3
.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
        <script type="text/javascript">
        function YesNo() {
            var result = confirm("Are you sure you want to delete?");


            if (result == true) {
                //var strUser = e.options[e.selectedIndex].value;
                var e = document.getElementById('<%= newLb.clientID %>');
                //var e = document.getElementById("ListBox1");
                var si = e.selectedIndex;
                var sv = e.value;
                document.write("TRUEEEEE");
                PageMethods.DeleteUser(sv);
            }
            else {
                document.write("FALSEEEEEE");
            }
        }
</script>

</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="A1" runat="server"  EnablePageMethods="true"></asp:ScriptManager>

    <div>

        <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/Login.aspx">Login</asp:HyperLink>

    </div>
    <asp:HyperLink ID="HyperLink2" runat="server" 
        NavigateUrl="~/ChangePassword.aspx">Change Password</asp:HyperLink>
    <br />
    <asp:HyperLink ID="HyperLink3" runat="server" NavigateUrl="~/CreateUser.aspx">Create User</asp:HyperLink>
    <br />
    <asp:HyperLink ID="HyperLink4" runat="server" NavigateUrl="~/AddRole.aspx">Add Roles</asp:HyperLink>
        <br />
        <br />
        <uc1:AdminEdit ID="AdminEdit1" runat="server" />
    </form>
</body>
</html>
Public newLb As New ListBox
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
    If Roles.IsUserInRole("admin") Then
    ElseIf Roles.IsUserInRole("editor") Then
        newLb = CType(AdminEdit1.FindControl("ListBox1"), ListBox)
    End If
End Sub
        <System.Web.Services.WebMethod()>
    Public Shared Function DeleteUser(ByVal uName As String) As String
        Dim u As MembershipUser
        Dim newEdit As New _Default
        Dim _newLb = newEdit.newLb
        _newLb.Items.RemoveAt(0)
        u = Membership.GetUser(uName)
        Try
            Membership.DeleteUser(u.UserName)
        Catch ex As Exception
            Return "Error:" & ex.Message
        End Try
        Return u.IsApproved.ToString
    End Function
fügen Sie den code für webmethod Deleteuser.

InformationsquelleAutor Bob | 2013-04-24

Schreibe einen Kommentar