2015-10-20 18 views
5

Chúng tôi yêu cầu người dùng ở đây để xác định html, vì vậy hãy thêm một số div hoặc một phần hoặc nội dung tương tự. Vì vậy, tôi muốn các chú giải công cụ xác thực khi chỉnh sửa HTML của mình. Nhưng không muốn có cảnh báo kiểu doc.Làm cách nào để xóa chú giải công cụ doctype đầu tiên của trình chỉnh sửa ace trong trình chỉnh sửa html của tôi?

tooltip of ace editor

+0

Như đã trình bày [trong chủ đề này] (https://groups.google.com/forum/#!msg/ace-discuss/qOVHhjhgpsU/E_34XjuMmlsJ), nó dường như không thể để lọc nhất định lỗi, mặc dù bạn có thể vô hiệu hóa tất cả. – skerit

Trả lời

8

Hãy thử điều này

var session = editor.getSession(); 
session.on("changeAnnotation", function() { 
    var annotations = session.getAnnotations()||[], i = len = annotations.length; 
    while (i--) { 
    if(/doctype first\. Expected/.test(annotations[i].text)) { 
     annotations.splice(i, 1); 
    } 
    } 
    if(len>annotations.length) { 
    session.setAnnotations(annotations); 
    } 
}); 
+0

Hầu như hoạt động hoàn hảo. Trong trường hợp thẻ không đúng định dạng trong dòng đầu tiên, ngoài "Kết thúc tệp không mong muốn trong tên thẻ", chúng tôi cũng nhận được 'Kết thúc tệp bất ngờ'. Dự kiến ​​DOCTYPE.' - nó không thực sự là một vấn đề lớn, nhưng nó sẽ là tuyệt vời nếu bạn cập nhật đoạn mã của bạn để phản ánh điều này. :) – Adam

3

Với "End tệp không mong đợi. DOCTYPE dự kiến." cảnh báo được lọc.

var session = editor.getSession(); 
session.on("changeAnnotation", function() { 
    var annotations = session.getAnnotations() || [], i = len = annotations.length; 
    while (i--) { 
     if (/doctype first\. Expected/.test(annotations[i].text)) { 
      annotations.splice(i, 1); 
     } 
     else if (/Unexpected End of file\. Expected/.test(annotations[i].text)) { 
      annotations.splice(i, 1); 
     } 
    } 
    if (len > annotations.length) { 
     session.setAnnotations(annotations); 
    } 
}); 
Các vấn đề liên quan