Hỏi về sử dụng CefSharp (Chromium Framework) thay thế WebBrowser trong C#

ảnh 1:

ảnh 2:

Em muốn điền nội dung vào table như hình 1, hình 2 là code của chỗ table đấy, em chạy cefsharp ạ. Các bác chỉ giúp em với ạ. Em tìm đủ mọi cách nhưng chưa được. Em đã dùng:
ChromiumWebBrowser web1;
web1.EvaluateScriptAsync(“document.getElementsByName(‘td’)[1].value = ‘Nội dung muốn điền’;”);

Không phải .value, mà là .textContent.

1 Like

em cảm ơn, nhưng chưa được bác ạ

Có thể di bạn chưa tham chiếu đúng thẻ td mà bạn cần?
Lấy thẻ theo tên thì dùng: document.getElementsByTagName() (TagName).
Không thì dùng id của nó luôn. getElementById().

1 Like

vẫn chưa đc bác ạ, em cũng đang thử các thứ khác, em có up cả ảnh đoạn code table đấy đó bác, ảnh 2 đó, có gì bác nghiên cứu giúp em, em cảm ơn ạ

Nếu không chạy thì do EvaluateScriptAsync() không thực thi được Javascript. Bạn thử gọi lệnh Javascript khác (alert())xem nó chạy ổn không.

2 Likes

Thử như này xem

var e = document.getElementById("noidung_td");
e.textContent = "My text";

Bạn vào console của browser test xem script đã chạy đúng chưa đã, ok rồi mới bỏ vào cefsharp

Trên text box của web thì em điền được dự liệu vào rồi, cũng bằng lệnh như trên, nhưng với table này không được, hơi khoai bác ạ

Bạn quăng luôn đoạn html lên mình check thử.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?