我的情况是这样的线程:
ASP.NET 自定义验证器 + WebMethod + jQuery
我的 aspx 代码:
<telerik:RadScriptManager ID="RadScriptManager1" runat="server" EnablePageMethods="True">
<asp:TextBox ID="TextBox" runat="server" Width="170px" ValidationGroup="A" CssClass="txt"
TextMode="Password"></asp:TextBox>
<asp:CustomValidator ID="cvPass" runat="server" Display="Dynamic" ControlToValidate="TextBox"
ValidationGroup="A" ClientValidationFunction="CheckPass">
invalid
</asp:CustomValidator>
jQuery:
function CheckPass(source, args) {
alert('asd');
$.ajax({
type: "POST",
async: false,
timeout: 500,
contentType: "application/json; charset=utf-8",
dataType: "json",
url: "Default.aspx/CheckPassword",
data: '{"Value":"' + args.Value + '"}',
success: function (result) {
alert('a');
args.IsValid = result.d;
}
});
}
后面的代码(c#):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
using System.Web.Services;
using System.Web.Script.Services;
using System.Data;
using System.Text;
using System.Net.Mail;
namespace Nasim
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod]
[ScriptMethod]
public static bool CheckPassword(string pass)
{
return false;
}
}
}
如您所见,我想在 ajax 模式下使用自定义验证器检查密码(使用 jquery)。
但我不知道为什么 $.ajax 根本不适合我。
没有错误,没有任何反应,并且总是有回发。
我应该添加除 jquery 之外的特定库吗?
我正在使用 Visual Studio 2010 + .Net 4。
有什么问题,我该如何解决?
提前致谢