Hướng dẫn dùng requiredfieldvalidator JavaScript

Validation:

RequiredFieldValidator rất đơn giản và hữu dụng. Bạn có thể dùng nó để đảm bảo người dùng nhập đúng giá trị vào TextBox. Thử dùng và thêm RequiredFieldValidator vào trong trang. Chúng ta sẽ thêm một TextBox và một button để gửi form.


    Your name:


Thực tế, đó là toàn bộ những gì chúng ta cần để kiểm tra phần cơ bản nhất của RequiredFieldValidator. Tôi chắc chắn toàn bộ thuộc tính của các control trở nên dễ hiểu, nên tôi sẽ không đi vào chi tiết. Thử chạy website và nhấn vào nút button. Bạn sẽ thấy một số thứ như sau:

Nếu trình duyệt của bạn hỗ trợ JavaScript, mà hiện nay toàn bộ trình duyệt đều có, thì bạn sẽ thấy rằng page sẽ không gửi ngược lại server - validation thực hiện ở bên client! Đây là một trong những điều tuyệt vời về ASP.NET. Validation chỉ được thực hiện bên server nếu cần! Để xem chúng hoạt động ra sao thì bạn có thể thêm enableclientScript = "false" sang RequiredFieldValidator và thử lại. Bây giờ bạn sẽ thấy trình duyệt gửi lại server nhưng kết quả như nhau - validator hoạt động!

Lúc này, button không làm gì mà chỉ gửi lại cho server nếu page là hợp lệ. Chúng ta sẽ thay đổi bằng cách thêm sự kiện title vào:

Trong tệp CodeBehind thì chúng ta thêm xử lý sự kiện:

protected void btnSubmitForm_Click[object sender, EventArgs e]
{
    if[Page.IsValid]
    {
        btnSubmitForm.Text = "My form is valid!";
    }
}

Như bạn thấy, chúng ta kiểm tra liệu page có hợp lệ không trước khi làm bất kỳ thứ gì. Điều này rất quan trọng trong trường hợp kiểm tra phía client không có vì một vài lý do nào đó. Một khi phía server kiểm tra hợp lệ thì đó là nhiệm vụ của bạn để đảm bảo rằng không có đoạn mã nào không đúng được chạy nếu bạn không muốn. Như bạn thấy, điều này rất đơn giản - chỉ kiểm tra tham số Page.IsValid. Thử chạy lại web và chú ý chữ trên button nếu bạn gửi form đúng.

This article has been fully translated into the following languages:

  • German
  • Hindi
  • Spanish

Is your preferred language not on the list? Click here to help us translate this article into your language!

Firstly I have seen the other threads on this topic and I just want something cleared up that I am stuck on.

I have this textbox control and required field validator:


    


    *

And this javascript code


    function chkValidators[] {
        alert["enter function chkValidators"];
        validatorEnable[document.getElementById[''], false];
    }

This is giving me a compilation error:

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately. 

Compiler Error Message: CS1002: ; expected

Source Error:

Line 158:            #line default
Line 159:            #line hidden
Line 160:            @__w.Write["\'], false];\r\n         }\r\n   \r\n"];
Line 161:        }
Line 162:        

Anyone know how to fix this?

Nick

Dung dịch

ASP.Net RequiredFieldValidator thuộc tính Đánh giá tùy chỉnh [ASP.Net RequiredFieldValidator custom EvaluationFunction property]

ASP.Net RequiredFieldValidator tùy chỉnh của tôi hiển thị đánh dấu như thế này ...

var af1_ctl00 = document.all ? document.all["af1_ctl00"] : document.getElementById["af1_ctl00"];
af1_ctl00.controltovalidate = "af1_af1_txt";
af1_ctl00.display = "None";
af1_ctl00.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
af1_ctl00.initialvalue = ""; 

Tuy nhiên, dường như không có cách nào để đặt thuộc tính chức năng đánh giá . Tôi cần thực hiện việc này để gọi một số tập lệnh tùy chỉnh.

Tôi đã thử các phương pháp sau.

  • Thêm thuộc tính mới khi điều khiển được hiển thị và khi các thuộc tính được hiển thị < / li>
  • Gọi RemoveAttribute theo sau là Attributes.Add
  • Đang cố gắng đặt lại nó qua javascript.

Có vẻ như không có gì hoạt động.

Nếu tôi có thể tìm được giải pháp hoạt động trong mã c # để đặt thuộc tính trước khi hiển thị, thì đó sẽ là giải pháp tốt nhất cho những gì tôi đang làm.

Dung dịch

Dung dịch 1:

Solved by doing the following....

ASP.Net validators actually define a span on the page, which is a DOM object in Javascript. They then add properties to that object. So you get something like this in the code generated by ASP.Net.

af1_ctl00.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";

You can then inject some javascript into your page that does something like this using Page.ClientScript.Register[....] in your code behind...

function NewValidationFunction[] {
    return [1 == 1];
}

var val = document.getElementById['af1_ct100'];
val.evaluationfunction = NewValidationFunction;

The validation function has now been changed to use your custom function.

[by Remotec、Remotec]

Dung dịch

  1. ASP.Net RequiredFieldValidator custom EvaluationFunction property [CC BY‑SA 3.0/4.0]

#javascript #ASP.NET #validation

Chủ Đề