【发布时间】:2012-06-28 23:02:41
【问题描述】:
我的情况是这样的:
ASP.NET Custom Validator + 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。
有什么问题,我该如何解决?
提前致谢
【问题讨论】:
-
alert会起火吗?除了 jquery 之外,您还包括任何其他 javascript 库吗?您是否在 firebug 之类的工具中查看过帖子的回复? -
我没有看到 alert('a');一点也不。研究萤火虫!
-
抱歉,我说警报时指的是
alert('asd')。只是在确认您的 js 函数实际上被调用了。 -
alert('asd')没有问题;意思是如果火灾。请看这个帖子 -> stackoverflow.com/questions/8890554/…
标签: c# jquery asp.net ajax customvalidator