<Cthuvien:ngay>
Controls thay thế: BSSCalendar
Mô tả
<Cthuvien:ngay> là control nhập liệu ngày tháng của hệ thống (kế thừa từ System.Web.UI.WebControls.TextBox).
Ô nhập chấp nhận định dạng ngày dd/mm/yyyy. Control tự gắn sự kiện bàn phím (onkeyup="ngay_an(event)") để lọc ký tự không hợp lệ và tự động chèn dấu gạch chéo (/). Hỗ trợ kiểm tra ngày hợp lệ (kieu_date) và nhiều kiểu lưu kết quả vào CSDL (D, S, I). Control cũng tự động tương thích với các sự kiện của GridX khi được đặt trong lưới.
Thuộc tính
Thuộc tính chung
| Tên | Kiểu | Mặc định | Có thể có | Mục đích | Thuộc tính mới | Ghi chú |
|---|---|---|---|---|---|---|
| ten | string | Thông báo tên của ô khi xảy ra lỗi. Nếu không có sẽ lấy id | label | |||
| kt_xoa | string | "K" | K: không bao giờ xóa G: dùng cho mã L: giữ khi làm mới form X: làm mới form là xóa | Xóa khi làm mới form | ||
| nhap | bool | true | true / false | Ấn nhập có lấy thông tin hay không (C/K ở client). Trong lưới css_G... tự động gán K | ||
| kieu_luu | enum | I | D: Date S: String I: Int | Kiểu định dạng lưu kết quả ngày vào CSDL | ||
| gtriDau | string | "" | Giá trị mặc định khi khởi tạo (client) | |||
| kieu_date | bool | true | true / false | Có tự động kiểm tra ngày hợp lệ hay không (form_ngValid(this)) |
Khởi tạo
Control được khai báo trong file .aspx như một server control:
<Cthuvien:ngay ID="ngay_sinh" runat="server" kieu_luu="I" />
Trước khi render ra client, function OnPreRender sẽ tự động chuyển các thuộc tính server-side thành HTML attribute để JavaScript phía client xử lý.
Các attribute luôn được gắn:
| Attribute | Giá trị | Mô tả |
|---|---|---|
tenKieu | "ngay" | Xác định loại control là ngay. |
ten_goc | ID | Lưu ID gốc của control. |
Tchange | "K" | Cờ nhận biết thay đổi mặc định. |
kieu_date | "C" hoặc "K" | Cờ cho client biết có thực hiện kiểm tra ngày hợp lệ hay không. |
kieu_luu | Giá trị của kieu_luu | Định dạng kết quả là D, S hoặc I. |
gtriDau | Giá trị của gtriDau | Thuộc tính này chỉ render nếu khác rỗng. |
kt_xoa | Giá trị của kt_xoa | Quy định trạng thái xóa nội dung khi form reset. |
ten | Giá trị của ten | Tên hiển thị khi có lỗi (dùng ID nếu rỗng). |
onkeydown | xuong(event); | Xử lý điều hướng xuống bằng bàn phím. |
onkeyup | ngay_an(event); | Tự động format thêm dấu / và loại bỏ ký tự chữ khi gõ. |
Nếu control không nằm trong GridX (không có CssClass bắt đầu bằng css_G):
nhap:"C"(nếunhap=true) hoặc"K"(nếunhap=false)onchange: Tự động gắn hàmform_ngValid(this)nếukieu_date=truevà chưa gán cấu hìnhonchangethủ công nào trước đó.class: Nếu chưa khai báoCssClass, tự động gán làcss_ngay.
Nếu control nằm trong GridX (CssClass bắt đầu bằng css_G), control sẽ bỏ qua các logic thông thường trên và tự động gắn logic của lưới:
- Gắn
onblur="GridX_doiMauBF(event);" - Gắn
onfocus="GridX_doiMauBF(event)" - Gắn
onchange="GridX_hamUp(event)" - Gắn
nhap="K"
Ví dụ
Khai báo thông thường:
<Cthuvien:ngay
ID="txtNgaySinh"
runat="server"
kieu_luu="I"
ten="Ngày sinh" />
Khai báo trong GridX:
<asp:TemplateField HeaderText="Ngày" HeaderStyle-Width="100px">
<ItemTemplate>
<Cthuvien:ngay
ID="ngay"
runat="server"
Width="100px"
CssClass="css_Gma_c"
kieu_luu="I" />
</ItemTemplate>
</asp:TemplateField>