Một trong những vấn đề gây khó chịu nhất bạn có thể gặp phải trong khi sử dụng JavaScript trong một ứng dụng Asp.Net là tham khảo một điều khiển máy chủ trong một trang được thừa kế từ một trang Master. Ví dụ, nói rằng chúng tôi có một điều khiển asp máy chủ hộp văn bản và chúng tôi muốn nhận được văn bản của nó, nếu bạn đã cố gắng để làm điều này bằng cách sử dụng document.getElementById ('controlId') chức năng, bạn sẽ nhận được thông báo đối tượng lỗi "dự kiến "hoặc" đối tượng là null, "vậy tại sao chúng tôi nhận được những sai sót trong khi chúng tôi chắc chắn rằng ID của điều khiển và cú pháp JavaScript là chính xác? Vâng, điều khiển máy chủ ID được thay đổi trong thời gian chạy, và chúng được nối với một tiền tố là nội dung giữ chỗ của họ, mà trong trường hợp của chúng tôi nó sẽ là nội dung của trang chủ và bạn có thể chắc chắn từ này nếu bạn chạy bất kỳ trang và xem source HTML sử dụng IE, cố gắng tìm kiếm cho ID bất kỳ kiểm soát của máy chủ, bạn sẽ thấy rằng nó hoàn toàn khác nhau từ một trong những trong file aspx, do đó, bạn có hai lựa chọn để tham khảo các điều khiển một cách chính xác:
Đầu tiên: bạn có thể xem mã nguồn HTML của mỗi trang và tạo ID mới cho các điều khiển của bạn và đặt chúng trong các chức năng JavaScript
:
document.getElementById ('id');
Nhưng cách này rất nghèo và không linh hoạt ở tất cả.
Thứ hai: là sử dụng các kỹ thuật mã hóa để có được ID tạo mới chương trình, bất kỳ kiểm soát máy chủ asp chứa một tài sản được gọi ClientID cung cấp cho chúng tôi với ID mới cho việc kiểm soát thời gian chạy, nhưng chúng tôi muốn có được điều này ID trong mã JavaScript, do đó, tất cả chúng ta đã làm là làm điều đó:
var txtBox = document.getElementById ('<% = txtName.ClientID%>'); Các ký hiệu: <% =%> có nghĩa là bạn có thể viết bất kỳ mã C # bên trong chúng, do đó, cách này là rất dễ dàng và linh hoạt cho bất cứ ai.
Bạn muốn gỡ lỗi mã JavaScript của bạn và không biết làm thế nào? Tại đây bạn có các giải pháp: Tất cả những gì bạn phải làm là đặt tất cả các mã JavaScript của bạn trong một riêng biệt file js , do đó, bạn sẽ có thể để chèn điểm ngắt bên trong các mã JavaScript, và sau đó cho phép gỡ lỗi JavaScript từ trình duyệt Internet Explorer của bạn, ở đây bạn là các bước:
Từ menu Tools chọn Internet Options, sau đó Advanced Tab .
Sau đó bên dưới Duyệt bỏ chọn vô hiệu hóa script debugging (Internet Explorer) & (khác).
Đó là tất cả, chèn breakpoint của bạn vào một tập tin JavaScript của bạn, nhấn F5 để gỡ rối và thưởng thức.
Các chủ đề khác cùng chuyên mục này: