CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 249

249

Chương 7: ASP.NET và Web Form

Page.RegisterStartupScript("PopupScript", popupScript);

6.

6.

Thi t l p focus cho đi u ki m

ế ậ

Thi t l p focus cho đi u ki m

ế ậ

Bạn cần chỉ định điều kiểm nào sẽ nhận focus khi trang được trả về và gửi cho
người dùng.

Tạo một lệnh JavaScript để thiết lập focus, và thêm nó vào trang bằng phương
thức

Page.RegisterStartupScript

.

Điều kiểm web ASP.NET không cung cấp cách để thiết lập focus cho điều kiểm, mà chỉ cung
cấp thuộc tính

TabIndex

để thiết lập thứ tự tab. Nhưng thuộc tính này chỉ áp dụng cho

Microsoft Internet Explorer và không thể được sử dụng để thiết lập focus cho điều kiểm do
bạn chọn. Để vượt qua hạn chế này, bạn cần sử dụng đến mã JavaScript.
Phương thức dưới đây sẽ thực hiện công việc này. Nó nhận vào một tham chiếu đến bất kỳ đối
tượng điều kiểm nào, thu lấy

ClientID

kết giao (mã JavaScript phải sử dụng ID này để tìm

đến điều kiểm), rồi tạo dựng và đăng ký kịch bản để thiết lập focus.

private void SetFocus(Control ctrl) {

// Định nghĩa lệnh JavaScript.

// Di chuyển focus đến điều kiểm bạn muốn.

string setFocus = "<script language='javascript'>" +

"document.getElementById('" + ctrl.ClientID +

"').focus();</script>";

// Thêm mã JavaScript vào trang.

this.RegisterStartupScript("SetFocus", setFocus);

}

Nếu thêm phương thức này vào một Web Form, bạn có thể gọi

SetFocus

khi cần. Ví dụ dưới

đây sẽ thiết lập focus khi trang nạp lần đầu tiên:

private void Page_Load(object sender,

System.EventArgs e) {

if (!this.IsPostBack) {

// Chuyển focus đến một TextBox cụ thể.

SetFocus(TextBox1);

}

}

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.