Chia sẻ

<a href="javascript:submitform('0108803228')" title="Địa chỉ trụ sở: 35N03B Đô thị mới Sài Đồng"><b>CÔNG TY TNHH PHÁT TRIỂN THƯƠNG MẠI VÀ ĐẦU TƯ PHƯƠNG LINH</b></a>

Nội dung

Giới thiệu

Trong lập trình C#, có những thủ thuật rất ít được chia sẻ, ví dụ như ta muốn nhấp chuột vào hàm JavaScript trên để lấy thông tin của Công ty, tuy nhiên cái đường dẫn trong thẻ <a> không phải là một đường dẫn bình thường, mà nó lại là một hàm Javascript, nhưng trong C# thì không hỗ trợ bằng các điều khiển cơ bản. Ta phải làm thế nào.

Các bước thực hiện:

Bước 1: Khởi tạo một Dự án C# mới

Bước 2: Kéo một Điều khiển Webrowser vào Form

Bước 3: Load trang chứa đoạn mã trên vào Webrowser thông qua thuộc tính Navigate

Bước 4. Kéo thêm 1 Button vào Form

Bước 5: Thêm đoạn mã sau vào sự kiện Click của Button

foreach (HtmlElement item in webBrowser1.Document.GetElementsByTagName("a"))
            {
                if (item.OuterHtml != null)
                {
                    if (item.OuterHtml.Contains("javascript:submitform('0108803228')"))
                    {
                        MessageBox.Show(item.OuterHtml);
                        item.InvokeMember("click");
                        break;
                    }
                }
            }

Giải thích đoạn mã:

Đầu tiên sẽ thực hiện vòng lặp foreach để duyệt tất cả các thẻ <a>.

Tiếp theo là kiểm tra thuộc tính OuterHtml của từng thẻ <a>. Nếu nó không phải là null thì kiểm tra tiếp.

Kiểm tra thuộc tính OuterHtml của thẻ <a> đang duyệt, nếu nó chứa đoạn text “javascript:submitform(‘0108803228’)” thì sẽ thực hiện

1. Mở cửa sổ MessageBox

2. Thực hiện Click chuột vào thẻ <a> này thông qua đoạn mã

item.InvokeMember("click");

3. Thoát khỏi vòng lặp foreach.

Lời kết:

Đây là thủ thuật vào dạng hiếm, ít được chia sẻ trên Internet. Nếu bạn nào có ý tưởng gì khác thì hãy chia sẻ thông qua mục Bình luận phía dưới.

Xem thêm  [C#] Hướng dẫn chống dịch ngược mã nguồn bằng công cụ Phoenix Protector

Chúc các bạn ngày cuối tuần vui vẻ. !!!

ĐĂNG KÝ MUA HÀNG

    Email (*)

    Điện thoại (*)

    Tên sản phẩm/Dịch vụ:


    Chia sẻ

    Trả lời

    Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *