2013-02-27 63 views
0

下面的代码运行alert(“Success”);当它独立时,函数fSuccess被注释掉,但它不会触发fSuccess()函数。这是为什么?非常感谢您的参与。在jQuery中运行函数.When()。完成

$.when(chkUsername(), chkPassword()).done(function() { 
       if (boolusername == 0) { 
        $("#ErrorUN").css("display", "block"); 
       } 
       else { 
        if (boolpassword == 0) { 
         $("#ErrorP").css("display", "block"); 
        } 
        else { 
         $.ajax({ 
          type: "POST", 
          url: "Registration.aspx/Success", 
          data: "{}", 
          contentType: "application/json; charset=utf-8", 
          dataType: "json", 
          success: function() { } 
         }); 
        } 
       } 
      }); //when 





Imports System.Web.Services 

Public Class Registration 
Inherits System.Web.UI.Page 

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
End Sub 

<WebMethod()> 
Public Shared Sub Success() 

    Dim strBreakPoint As String = "qwerty" 

End Sub 

末级

+0

我发到服务器端代码的一些变化,加上参考System.Web.Services和,我也把它改成一个共享的,现在它的工作原理。感谢大家的帮助。 – 2013-02-27 18:49:53

回答

1

这是因为你在声明函数fSuccess,但从来没有真正把它。

除此之外,你可能想使用Ajax回调,像这样:

... 
else { 
    alert("Success!"); 
    //Add Server Side Function Here 
    .ajax({ 
     type: "POST", 
     url: "Registration.aspx/Success", 
     success: function() { alert("Success from server"); } 
    }); 
} 
... 
+0

我改变了它,警报触发,但没有服务器端代码。 – 2013-02-27 18:01:40

0

你只是宣布在该范围内的功能。您需要在定义后调用它。

fSuccess();