1

我正在开发一个 Intranet 桌面应用程序,并且大多数功能都需要一个 Web 界面来配合它。第一次迭代的桌面部分非常完整,现在我必须在 WebForms 中完成。我已经有一年多没有接触过 WebForms 了,我想知道......

如果我有一个带有一些文本框的表单,我意识到我可以使用 javascript 和诸如此类的代码进行验证,但是有没有一种方法可以像在 WinForms 中一样做到这一点?WinForms 文本框有一个验证方法,当用户离开文本框时会调用该方法。在桌面应用程序上,我将其设置为设置在属性设置中具有验证的类实例属性。有没有办法我可以在 WebForms 中做同样的事情,或者我必须在客户端再次将其全部写出来?ASP TextBoxes 有一个 textchanged 方法,但我没有看到验证。我想你们会说我必须在客户端再写一遍,但希望如此。

4

1 回答 1

1

您不必从头开始。Asp.Net 有几个内置的验证器来帮助处理数据类型、范围、字段之间的比较、必填字段,甚至是错误摘要。有关更多信息,请参阅此链接

您还可以使用CustomValidator控件将您自己的 javascript 与此验证模型一起使用。

w3schools.com这里有一个非常好的教程

编辑:避免回发

您可以使用 UpdatePanel 包装您的 TextBox 以使用 Ajax,或者如果您想提高效率,您可以使用 jQuery 调用 WebMethod 并设置对象。例子:

[WebMethod(EnableSession = true)]    
public static  string MyWebMethod(String someVar)
{ 
    HttpContext.Current.Session["someVar"] = someVar;
}

在客户端:

 $.ajax({
        type: "POST",
        url: 'Page.aspx/MyWebMethod',
        data: "{ someVar: 'valueFromTextBox' }",
        contentType: 'application/json; charset=utf-8',
        success: function (data) {
            //alert(data);
        }
    });
于 2012-05-04T19:25:17.660 回答