Chuyển tới nội dung chính

<Cthuvien:anh>

thông tin

Controls thay thế: <img> cơ bản hoặc BSSButton.

Mô tả​

Cthuvien:anh là một control hiển thị hình ảnh qua thẻ <img> sử dụng như một nút bấm (button). Control tích hợp cơ chế chống spam click: nếu hệ thống đang xử lý.


Thuộc tính​

Thuộc tính chung​

TênKiểuMặc địnhCó thể cóMục đíchThuộc tính mớiGhi chú
srcstringĐường dẫn đến file hình ảnh
Srcstring""URL / path ảnhĐường dẫn tới file ảnh
Altstring""Chuỗi textVăn bản thay thế khi ảnh không load hoặc dùng cho accessibility
Alignstring""left, right, center...Căn chỉnh vị trí ảnh so với nội dung khác
Borderint-1Số nguyên ≥ 0Độ dày viền của ảnh (px)
Heightint-1Số nguyên ≥ 0Chiều cao của ảnh
Widthint-1Số nguyên ≥ 0Chiều rộng của ảnh

Chức năng​

TênKiểuMặc địnhCó thể cóMục đíchThuộc tính mớiGhi chú
onclickstringMã JavaScript cần thực thi khi người dùng click vào ảnh
hoi_xoastringChuỗi cảnh báo/xác nhận hoặc cờ cấu hình hỏi trước khi thực hiện tác vụ
giubooltrueĐặt cờ ngăn chặn click nhiều ảnh cùng lúc, nếu đang chạy hàm khác thì sẽ báo "Đang xử lý!" (sử dụng cơ chế form_chay)

Khởi tạo​

Quá trình render phía server (OnPreRender)​

1. Gán Alt = "" (bất kể khai báo).

2. Nếu ID được đặt, gán ten_goc = ID lên thẻ HTML để JS nội bộ có thể tra cứu.

3. Nếu onclick được khai báo, bọc thêm logic chống spam:

if (form_Fb_CHAY()) {alert('Đang xử lý!'); return false;}
[nếu giu=true] form_chay=1;
<hàm onclick gốc>;
form_chay=0;
return false;

Khi giu = false, cờ form_chay không được bật, nghĩa là các control khác vẫn có thể chạy song song. Khi giu = true, cờ form_chay=1 được bật trước khi gọi hàm và tắt sau, ngăn mọi click khác trong suốt quá trình xử lý.


Ví dụ​

Nút xóa có chống spam click​

<Cthuvien:anh
ID="btnXoa"
runat="server"
Src="/images/delete.png"
giu="true"
onclick="return xoa_DL();" />

HTML render tương ứng:

<img
id="ctl00_MainContent_btnXoa"
src="/images/delete.png"
alt=""
ten_goc="btnXoa"
onclick="if (form_Fb_CHAY()) {alert('Đang xử lý!'); return false;}form_chay=1;return xoa_DL();; form_chay=0; return false;" />


Nút không giữ cờ (giu = false)​

<Cthuvien:anh
ID="btnXem"
runat="server"
Src="/images/view.png"
onclick="xem_CT();" />

HTML render tương ứng (không có form_chay=1):

<img
id="ctl00_MainContent_btnXem"
src="/images/view.png"
alt=""
ten_goc="btnXem"
onclick="if (form_Fb_CHAY()) {alert('Đang xử lý!'); return false;}xem_CT();; form_chay=0; return false;" />


Ảnh trang trí (không có onclick)​

<Cthuvien:anh
ID="imgLogo"
runat="server"
Src="/images/logo.png"
Width="120"
Height="40" />

Khi không khai báo onclick, không có logic chống spam nào được thêm vào:

<img
id="ctl00_MainContent_imgLogo"
src="/images/logo.png"
alt=""
width="120"
height="40"
ten_goc="imgLogo" />