245
Chương 7: ASP.NET và Web Form
Trong trường hợp này, bạn sử dụng hàm JavaScript
alert
(nội tại) và sự kiện JavaScript
onBlur
(phát sinh khi một điều kiểm mất focus). Hầu hết các phần tử HTML đều hỗ trợ các sự
kiện sau đây:
•
onFocus
xảy ra khi một điều kiểm nhận focus.
•
onBlur
xảy ra khi một điều kiểm mất focus.
•
onClick
xảy ra khi người dùng nhắp vào một điều kiểm.
•
onChange
xảy ra khi người dùng thay đổi giá trị của điều kiểm nào đó.
•
onMouseOver
xảy ra khi người dùng di chuyển con trỏ chuột trên một điều kiểm.
Một cách khác để chèn mã JavaScript là định nghĩa một hàm JavaScript trong một biến chuỗi
rồi lệnh cho ASP.NET chèn nó vào trang web được trả về. Nếu làm theo cách này, bất kỳ điều
kiểm nào cũng có thể gọi hàm để đáp ứng cho một sự kiện JavaScript.
Ví dụ dưới đây sẽ làm rõ kỹ thuật này bằng một trang web gồm một bảng và một bức hình
(xem hình 7.2). Khi người dùng di chuyển chuột lên các ô trong bảng thì hai hàm JavaScript
tùy biến sẽ được sử dụng: một tạo highlight cho ô hiện tại và một gỡ bỏ highlight khỏi ô trước
đó. Ngoài ra, hàm tạo highlight còn thay đổi URL của bức hình tùy thuộc vào cột nào đang
được chọn. Nếu người dùng đưa chuột lên cột thứ nhất, hình mặt cười sẽ được hiển thị. Nếu
người dùng đưa chuột lên cột thứ hai hoặc thứ ba, hình quyển sách với dấu chấm hỏi nhấp
nháy sẽ được hiển thị.
using System;
using System.Web;
using System.Web.UI.WebControls;
public class JavaScriptTest : System.Web.UI.Page {
protected System.Web.UI.WebControls.Table Table1;
protected System.Web.UI.WebControls.Image Image1;
// (Bỏ qua phần mã designer.)
private void Page_Load(object sender, System.EventArgs e) {
// Định nghĩa các hàm JavaScript.
string highlightScript =
"<script language=JavaScript> " +
"function HighlightCell(cell) {" +
"cell.bgColor = '#C0C0C0';" +
"if (cell.cellIndex == 0) {" +
"document.Form1.Image1.src='happy_animation.gif';}" +
"else {" +
"document.Form1.Image1.src='question_animation.gif';}" +