Dom html trong javascript, lấy nội dung trong thẻ html

Tìm hiểu DOM HTML trong Javascript, cách lấy nội dung và gán nội dung HTML, lấy giá trị và gán giá trị thuộc tính bằng javascript

Bài 36: DOM Element trong javascript


Trong bài này chúng ta sẽ tìm hiểu về DOM HTML trong Javascript, đây là nhóm DOM dùng để thay đổi nội dung thẻ HTML, cũng như thay đổi các thuộc tính của thẻ HTML.

Khi làm việc với Javascript thì việc lấy nội dung bên trong của một thẻ HTML là rất thường xuyên, và đôi khi bạn cũng cần gán nội dung vào các thẻ HTML để tạo các thông báo đến người dùng.

Ví dụ, bạn xây dựng chức năng validate dữ liệu của form đăng ký thành viên. Bạn có thể sử dụng hàm alert để thông báo những vi phạm của người dùng. Nhưng chuyên nghiệp hơn thì bạn sẽ tạo ra những thông báo trực tiếp trên trang html, bằng cách sử dụng javascript để bổ sung nội dung lỗi vào các vị trí đã xác định từ trước.

1. Lấy nội dung trong thẻ HTML bằng Javascript

Để lấy nội dung bên trong một thẻ HTML thì chúng ta sử dụng cú pháp như sau:

document.getElementById("content").innerHTML

Trong đó innerHTML chính là thuộc tính của đối tượng html, công dụng của nó là dùng để lấy hoặc gán giá trị cho một thẻ html.

Để thay đổi nội dung cho một thẻ HTML thì ta dùng cú pháp sau:

document.getElementById("content").innerHTML = "<h1>Nội dung</h1>";

Ví dụ: Trong ví dụ này ta sẽ viết chương trình thay đổi nội dung bên trong của một thẻ div, và lấy nội dung bên trong của thẻ div đó.

Demo
<html>
  <body>
    <script language="javascript">
      // Hàm thiết lập nội dung cho thẻ div#content
      function set_content()
      {
        document.getElementById("content").innerHTML = "<h1>Nội dung đã được thay đổi</h1>";  
      }
       
      // Hàm lấy nội dung cho thẻ div#content
      function get_content()
      {
        var html = document.getElementById("content").innerHTML;
        alert("Nội dung cần lấy là: " + html);        
      }
       
    </script>
    <div id="content">Nội dung của thẻ DIV</div>
    <input type="button" value="Lấy nội dung" id="get_content" onclick="get_content()" />
    <input type="button" value="Thay đổi nội dung" id="set_content" onclick="set_content()" />
  </body>
</html>


2. Thay đổi thuộc tính thẻ html bằng Javascript

Để thay đổi giá trị của thuộc tính HTML thì ta sử dụng cú pháp như sau:

document.getElementById("element").attributeName = "new value";

Để lấy giá trị của thuộc tính HTML ta sử dụng cú pháp sau:

document.getElementById("element").attributeName;

Trong đó attributeName là tên của thuộc tính mà bạn cần xử lý. Tùy vào mỗi thẻ html mà có các thuộc tính khác nhau. Dưới đây là danh sách các thuộc tính thường dùng nhất.

Quá đơn giản phải không nào, rất giống với cách thay đổi và lấy nội dung bên trong thẻ HTML. Từ đây có thể suy ra rằng trong Javascript để thiết lập (set) và lấy (get) thì sử dụng chung một cú pháp, chỉ khác nhau ở chỗ gán bằng và không có gán bằng.

Ví dụ: Xây dựng chương trình khi click vào một button thì chuyển nó thành textbox, và tiếp tục click vào textbox thì sẽ đổi thành button

Demo
<html>
    <body>
        <script language="javascript">
          function change()
          {
             // Lấy đối tượng
             var object = document.getElementById("object");
          
             // lấy thuộc tính type
             var type = object.type;
         
             // kiểm tra thuộc tính type và thay đổi
            if (type == "button"){
           
               object.type = 'text';
            }
            else{
                object.type = "button";
            }
         
          }
        </script>
        <input type="button" value="CLick me" onclick="change()" id="object" />
    </body>
</html>


3. Lời kết

Như vậy là bạn đã biết hai cách xử lý thuộc tính và nội dung của thẻ HTML bằng javascript rất thông dụng rồi đấy, thực tế bạn có thể sử dụng những mánh khóe để xử lý bài toán một cách tốt hơn. Ví dụ bạn cần bổ sung một đoạn text vào trong một thẻ HTML thì sẽ không có hàm nào bổ trợ, tuy nhiên bạn có thể sử dụng một mẹo nhỏ thế này:

<html>
    <body>
        <script language="javascript">
          function change(){
            var content_append = 'nội dung cần thêm vào';
 
            // Lấy đối tượng
            var object = document.getElementById("object");
            
            // Lấy nội dung hiện tại
            var content_current = object.innerHTML;
            
            // Bổ sung nội dung vào đối tượng
            object.innerHTML = content_current + content_current;

            var type = object.type;

            if(type== "button"){
              object.type = 'text';
            }
          }
          function change()
          {
             // Lấy đối tượng
             var object = document.getElementById("object");
          
             // lấy thuộc tính type
             var type = object.type;
         
             // kiểm tra thuộc tính type và thay đổi
            if (type == "button"){
           
               object.type = 'text';
            }
            else{
                object.type = "button";
            }
         
          }
        </script>
        <input type="button" value="CLick me" onclick="change()" id="object" />
    </body>
</html>


Đấy, cho nên việc lập trình là vô vàn hướng giải và việc lựa chọn một hướng đi đúng mới là vấn đề. Và qua bài này bạn thấy sức mạnh của DOM rồi phải không nào

Bài 38: DOM CSS: Thay đổi CSS bằng Javascript



  • Tags:

Không có đánh giá nào.

Viết một đánh giá.

Để bình luận vui lòng Đăng nhập tài khoản ! hoặcĐăng ký mới!