Nền tảng Kiến thức - Hành trang tới Tương lai
Card image

Chương trình học


  1. Giới thiệu, cài đặt, cấu hình môi trường lập trình 2
    1. Cài đặt trình soạn thảo code Visual Studio Code IDE Xem trước
    2. Cài đặt tiện ích mở rộng Live Server Extension cho Visual Studio Code
  2. HTML5 là gì? Các thẻ (tag) HTML cơ bản 19
    1. HTML là gì? Cú pháp sử dụng thẻ (tag) trong HTML
    2. Khác biệt giữa HTML và HTML5
    3. Cấu trúc file HTML5 cơ bản
    4. Các Quy tắc và Quy ước nên tuân theo khi lập trình web HTML5 CSS JS
    5. Các thói quen cần có khi lập trình web sử dụng HTML
    6. Các thẻ (tag) định nghĩa mô tả (meta) cho trang web
    7. Các thẻ (tag) định dạng Đề mục (Heading), Phân đoạn (Paragraph), Ngắt dòng (Break) cho văn bản (Text)
    8. Các thẻ (tag) tạo đường kẻ ngang (Horizontal Rule)
    9. Các thẻ (tag) định dạng kiểu font chữ
    10. Các thẻ (tag) định dạng hiển thị cho văn bản (text)
    11. Phân biệt 2 họ font chữ phổ biến SERIF và SANS SERIF
    12. Các thẻ (tag) tạo Siêu liên kết (hyperlink)
    13. Các thẻ (tag) tạo Danh sách (list)
    14. Các thẻ (tag) chèn hình ảnh vào trang web
    15. Các thẻ (tag) chèn các đối tượng đa phương tiện (audio, video) vào trang web
    16. Các thẻ (tag) làm thanh tự động cuộn nội dung trong trang web
    17. Các ký tự đặc biệt trong HTML
    18. Thẻ (tag) IFRAME để nhúng trang web khác vào trang web của mình
    19. Các loại font chữ phổ biến trong thiết kế web SERIF, SANS SERIF, DISPLAY, HANDWRITING, MONOSPACE
  3. Thiết kế bố cục trang web (layout) 12
    1. Thẻ TABLE (TABLE tag) là gì?
    2. Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag)
    3. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Đơn giản
    4. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang chủ
    5. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Giới thiệu
    6. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Liên hệ
    7. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Danh sách Sản phẩm
    8. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Sản phẩm chi tiết
    9. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Giỏ hàng
    10. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Tìm kiếm
    11. Thẻ DIV (DIV tag) là gì?
    12. Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag)
  4. Tạo biểu mẫu nhập liệu sử dụng thẻ (tag) FORM 21
    1. Biểu mẫu nhập liệu (form) là gì? Thường được sử dụng vào mục đích gì?
    2. Tạo ô nhập liệu INPUT 1 dòng (single line text)
    3. Tạo ô nhập liệu TEXTAREA nhiều dòng (multiline text)
    4. Tạo ô nhập liệu INPUT dạng ẩn (hidden)
    5. Tạo nút bấm BUTTON
    6. Tạo ô nhập liệu CHECKBOX chọn 1 hoặc nhiều những tùy chọn
    7. Tạo ô nhập liệu RADIO chọn 1 trong những tùy chọn
    8. Tạo ô nhập liệu SELECT cho phép chọn lựa tùy chọn
    9. Tạo ô nhập liệu INPUT kiểu COLOR
    10. Tạo ô nhập liệu INPUT kiểu DATE
    11. Tạo ô nhập liệu INPUT kiểu EMAIL
    12. Tạo ô nhập liệu INPUT kiểu NUMBER
    13. Tạo ô nhập liệu INPUT kiểu RANGE
    14. Tạo ô nhập liệu INPUT kiểu TEL (số điện thoại)
    15. Tạo ô nhập liệu INPUT kiểu TIME
    16. Tạo ô nhập liệu INPUT kiểu URL
    17. Tạo thanh đo lường METER
    18. Tạo thanh tiến trình PROGRESS
    19. Tạo biểu mẫu (Form) đặt vé Máy bay
    20. Tạo biểu mẫu (Form) Đăng nhập
    21. Tạo biểu mẫu (Form) Đăng ký
  5. CSS là gì? 33
    1. CSS là gì? Cú pháp sử dụng CSS
    2. Các cách áp dụng CSS để định dạng trang web
    3. Các thuộc tính CSS định dạng font chữ
    4. Các thuộc tính CSS quy định màu sắc đối tượng
    5. Đơn vị đo lường trong CSS
    6. Bài tập - Tạo menu ngang đa cấp bằng CSS
    7. Các thuộc tính quy định Kích thước và Khoảng cách của các phần tử
    8. Tìm hiểu về Thuộc tính vị trí Position trong CSS
    9. Tìm hiểu các thuộc tính quy định vị trí Trôi nổi, Dàn hàng ngang sử dụng Float Left, Float Right trong CSS
    10. Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag), thuộc tính CSS Float left, right và kỹ thuật sử dụng điểm ngắt CSS class clear-fix
    11. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Header phong cách 1
    12. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Header phong cách 2
    13. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Header phong cách 3
    14. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Call for Action
    15. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Feature Product
    16. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Services
    17. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Team
    18. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Experience
    19. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Portfolio phong cách 1
    20. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Portfolio phong cách 2
    21. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Portfolio phong cách 3
    22. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Statistic
    23. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Testimonials
    24. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Pricing Tables
    25. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Get in touch phong cách 1
    26. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Get in touch phong cách 2
    27. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Footer
    28. Bộ lựa chọn đặc biệt theo trạng thái Pseudo Class và Pseudo Element trong CSS
    29. Bộ lựa chọn trong CSS (CSS Selector)
    30. Sử dụng CSS để làm nhà sáng tạo Nghệ thuật sắp xếp trình bày chữ Typography
    31. Hướng dẫn phân tích Bố cục (layout) Web bán hàng Thực phẩm Dinh dưỡng Organic
    32. Tư duy Thiết kế Khung cần có khi xây dựng giao diện Một Trang web
    33. Tìm hiểu toàn diện về thuộc tính trình diễn ảnh object-fit trong CSS
  6. Javascript căn bản 9
    1. Javascript là gì? Ứng dụng của Javascript
    2. Các cách sử dụng Javascript trong trang web
    3. Biến trong Javascript
    4. Hàm trong Javascript
    5. Lab 01 - tạo chương trình tính toán cơ bản
    6. Bài tập Ghép chuỗi String
    7. Kiểm tra Kiến thức JS
    8. Cấu trúc điều khiển sử dụng IF ELSE
    9. Cách lấy dữ liệu Người dùng từ Biểu mẫu (FORM)
  7. JQuery căn bản 10
    1. Giới thiệu JQuery và ứng dụng của JQuery trong thiết kế, lập trình web
    2. Cú pháp của JQUERY và cách sử dụng JQUERY trong trang web
    3. Tìm hiểu quy tắc vận hành của JQUERY
    4. Toàn tập về Bộ lựa chọn (selector)
    5. Bài tập Tạo trang tùy chỉnh Nội dung và Giao diện bằng JQUERY
    6. Bài tập Thực thi một hàm xử lý sau một khoảng thời gian bằng hàm setTimeout
    7. Bài tập Thực thi một hàm xử lý liên tục sau 1 khoảng thời gian bằng hàm setInterval
    8. Thu thập dữ liệu người dùng nhập trong FORM bằng JQUERY
    9. Tích hợp bộ công cụ Soạn thảo văn bản Trực quan WYSIWYG CKEDITOR
    10. Tích hợp công cụ chọn Ngày Tháng Date Picker
  8. Bootstrap là gì? JQuery là cái chi? 8
    1. Giới thiệu Bootstrap
    2. Cách sử dụng Bootstrap trong dự án của bạn
    3. Hệ thống Lưới (GRID) của Bootstrap
    4. Bài tập - Thiết kế Bố cục (layout) bằng Bootstrap
    5. Ràng buộc dữ liệu (validation) bằng Bootstrap
    6. Bài tập Tổng hợp - Thực hiện Trang web Landing Page giới thiệu Công ty
    7. Thiết kế trang web bố cục (layout) tùy biến theo từng thiết bị màn hình (Responsive)
    8. Tùy biến giao diện theo từng thiết bị màn hình (Responsive) bằng kỹ thuật CSS Media Query
  9. Làm Đồ án Web thực tế Trang bán hàng Nền Tảng phiên bản Bootstrap 14
    1. Lộ trình (Roadmap) Thực hiện Đồ án
    2. Khởi tạo thư mục dự án
    3. Phân tích Bố cục (layout)
    4. Xây dựng Trang chủ (index)
    5. Xây dựng Trang Giới thiệu (about)
    6. Xây dựng Trang Liên hệ (contact)
    7. Xây dựng Trang Danh sách Sản phẩm (products)
    8. Xây dựng Trang Chi tiết Sản phẩm (product_detail)
    9. Xây dựng Trang Giỏ hàng (cart)
    10. Xây dựng Trang Thanh toán (checkout)
    11. Xây dựng Trang Đăng nhập (login)
    12. Xây dựng Trang Đăng ký (register)
    13. Xây dựng Trang Tìm kiếm (search)
    14. Thưởng thức Kết quả (demo version)
  10. Kiểm tra
  11. Tài liệu tham khảo 4
    1. Kho sách, nguồn tài liệu tham khảo Lập trình web Frontend HTML CSS JS
    2. SourceCode tham khảo Lập trình web Frontend HTML CSS JS
    3. Các thể loại Menu trong Thiết kế Web
    4. Tổng hợp các công cụ tự sinh Giao diện HTML, CSS, JS tuyệt vời dành cho Nhà phát triển thiết kế Web
  12. VueJS 7
    1. VueJS là gì? Ứng dụng của VueJS trong phát triển web FrontEnd
    2. Tìm hiểu Kiến trúc Hệ thống Web MVVM - Model View ViewModel
    3. Component trong VueJS
    4. Kiểm tra ràng buộc dữ liệu (validation) bằng VueJS và Bootstrap đơn giản
    5. Kiểm tra ràng buộc dữ liệu (Validation) bằng VueJS và Bootstrap
    6. Bài tập - Sử dụng Bootstrap và VueJS để thiết kế Trang Tuyển dụng các Vị trí Việc làm Công nghệ
    7. Test
  13. UI/UX trong lập trình Web 2
    1. Tìm hiểu về khái niệm UI/UX trong thiết kế ứng dụng
    2. Quy trình Xây dựng, Thiết kế một trang Web
  14. CSS Flexbox 1
    1. Tạo cấu trúc Dòng x Cột trong CSS Flexbox
  15. Extras 2
    1. Bài tập xử lý lưu trữ dữ liệu với LocalStorage
    2. Tạo hiệu ứng chuyển động animation với tính năng motion-path CSS
  16. Video khóa học 1
    1. Video khóa học toàn tập

Chương 15-Bài 1. Bài tập xử lý lưu trữ dữ liệu với LocalStorage

Tác giả: Dương Nguyễn Phú Cường
Ngày đăng: Hồi xưa đó

Đề bài

Lưu dữ liệu dưới LocalStorage

Ở bài Assignment 01, khi bạn mở lại ứng dụng thì toàn bộ thông tin thú cưng trước sẽ không còn nữa. Vậy nên ở bài Assignment 02 bạn sẽ thực hành lưu các dữ liệu thú cưng đó lại. Điều này giúp cho khi mở lại ứng dụng thì bạn vẫn còn thông tin thú cưng đã nhập trước đó.
Để hoàn thanh được yêu cầu này, bạn sẽ cần sử dụng một API trong trình duyệt, gọi là LocalStorage - đây là một API giúp bạn lưu trữ các dữ liệu (ở dạng String hoặc Number) theo cấu trúc Key-Value xuống dưới bộ nhớ của trình duyệt, dữ liệu này sẽ không bị xóa kể cả bạn có tải lại trang. Bạn sẽ viết vào một file storage.js hai hàm:
  • saveToStorage: Hàm nhận hai tham số là Key và Value, sau đó sẽ thực hiện việc lưu xuống LocalStorage.
  • getFromStorage: Hàm nhận vào tham số là Key, sau đó sẽ lấy dữ liệu từ LocalStorage theo Key tương ứng.
Sau đó, bạn sẽ cần cập nhật lại các đoạn code ở bài Assignment:
  • Khi mở ứng dụng, sẽ cần lấy lại dữ liệu đã lưu ở LocalStorage và hiển thị các thư cưng đã nhập.
  • Khi nhập một thú cưng mới, cần lưu lại dữ liệu vào LocalStorage.
  • Khi xóa thú cưng, cần xóa thú cưng tương ứng ở LocalStorage.
 

Cách giải

Step 1: tạo các hàm xử lý lưu trữ LocalStorage: saveToStorage và getFromStorage

  • Hiệu chỉnh file: script/storage.js
  • Nội dung code hiệu chỉnh:
"use strict";

// Lấy danh sách thú cưng đã có trong localStorage

/**
 * Hàm thực hiện việc Lưu trữ vào LocalStorage
 * @param {*} key Từ khóa
 * @param {*} value Giá trị
 */
function saveToStorage(key, value) {
  var data = value;

  // Kiểm tra, nếu dữ liệu là kiểu mảng ARRAY
  // -> cần phải convert về kiểu String để lưu trữ được vào LocalStorage
  if(Array.isArray(value)) {

    // Hàm JSON.stringify sẽ chuyển đổi ARRAY thành STRING
    data = JSON.stringify(value);
  }

  // Lưu trữ vào LocalStorage với từ khóa "key"
  window.localStorage.setItem(key, data);
}

/**
 * Hàm lấy giá trị được lưu trữ trong LocalStorage
 * @param {*} key Từ khóa
 */
function getFromStorage(key) {

  // Lấy dữ liệu từ LocalStorage
  return window.localStorage.getItem(key);
}

Step 2: hiệu chỉnh xử lý nút Submit

  • Hiệu chỉnh file: script.js
  • Nội dung code hiệu chỉnh:
// Bắt sự kiện Click vào nút "Submit"
btnSubmit.addEventListener("click", function () {
  // Lấy dữ liệu từ các Input Form
  const inputId = document.getElementById("input-id").value;
  const inputName = document.getElementById("input-name").value;
  const inputAge = parseInt(document.getElementById("input-age").value);
  const inputType = document.getElementById("input-type").value;
  const inputWeight = parseInt(document.getElementById("input-weight").value);
  const inputLength = parseInt(document.getElementById("input-length").value);
  const inputColor = document.getElementById("input-color-1").value;
  const inputBreed = document.getElementById("input-breed").value;
  const inputVaccinated = document.getElementById("input-vaccinated").checked;
  const inputDewormed = document.getElementById("input-dewormed").checked;
  const inputSterilized = document.getElementById("input-sterilized").checked;

  const data = {
    id: inputId,
    name: inputName,
    age: inputAge,
    type: inputType,
    weight: inputWeight,
    length: inputLength,
    color: inputColor,
    breed: inputBreed,
    vaccinated: inputVaccinated,
    dewormed: inputDewormed,
    sterilized: inputSterilized,
    date: new Date(),
  };

  // Validate dữ liệu hợp lệ
  if (data.id === "") {
    alert("Please input for pet id!");
    return false;
  }

  for (let i = 0; i < petArr.length; i++) {
    if (data.id === petArr[i].id) {
      alert("ID must unique!");
      return false;
    }
  }

  if (data.name === "") {
    alert("Please input for pet name!");
    return false;
  }

  if (data.age === "" || isNaN(data.age)) {
    alert("Please input for age!");
    return false;
  } else if (data.age < 1 || data.age > 15) {
    alert("Age must be between 1 and 15!");
    return false;
  }

  if (data.type === "Select Type") {
    alert("Please select type!");
    return false;
  }

  if (data.weight === "" || isNaN(data.weight)) {
    alert("Please input for weight!");
    return false;
  } else if (data.weight < 1 || data.weight > 15) {
    alert("Weight must be between 1 and 15!");
    return false;
  }

  if (data.length === "" || isNaN(data.length)) {
    alert("Please input for length!");
    return false;
  } else if (data.length < 1 || data.length > 100) {
    alert("Length must be between 1 and 100!");
    return false;
  }

  if (data.breed === "Select Breed") {
    alert("Please select Breed");
    return false;
  }

  petArr.push(data);

  renderTableData(petArr);
  resetForm();

  // Lưu trữ dữ liệu Danh sách Pet array vào LocalStorate với key="petData"
  // Gọi hàm vừa viết trong file "script/storage.js"
  saveToStorage("petData", petArr);
});

Kết quả

Step 3: hiệu chỉnh nút Xóa

  • Hiệu chỉnh file: script.js
  • Nội dung code hiệu chỉnh:
// Xóa một thú cưng
function deletePet(x) {
  if (confirm("Are you sure?")) {
    for (let i = 0; i < petArr.length; i++) {
      if (petArr[i].id === x) {
        petArr.splice(i, 1);
        renderTableData(petArr);

        // Sau khi xóa dòng dữ liệu -> tiến hành cập nhập lại dữ liệu trong LocalStorage
        // Lưu trữ dữ liệu Danh sách Pet array vào LocalStorate với key="petData"
        // Gọi hàm vừa viết trong file "script/storage.js"
        saveToStorage("petData", petArr);
      }
    }
  }
}

Kết quả

Step 4: Hiển thị lại danh sách các Pet đã lưu trong LocalStorage

  • Hiệu chỉnh file: script.js
  • Nội dung code hiệu chỉnh:
// Hiển thị danh sách Pet Data đã lưu trữ trong LocalStorage ngay khi vừa load xong trang web
// Do dữ liệu lưu trữ trong LocalStorage chỉ là String -> nên cần convert sang Array để hiển thị
// Sử dụng hàm JSON.parse('string') -> sẽ chuyển từ string sang array
var dataString = getFromStorage("petData");
var dataArr = JSON.parse(dataString);

petArr.splice(0, petArr.length); // Clear toàn bộ PetArr trước khi render lại table
for (let i = 0; i < dataArr.length; i++) {
  let pet = dataArr[i];
  pet.date = new Date(pet.date);

  // Add vào petArr
  petArr.push(pet);
}
renderTableData(petArr); // Hiển thị lại Table

Kết quả


Code hiệu chỉnh

Các bài học

Chương trình học

Bao gồm Module, Chương, Bài học, Bài tập, Kiểm tra...

Chương trình học


  1. Giới thiệu, cài đặt, cấu hình môi trường lập trình 2
    1. Cài đặt trình soạn thảo code Visual Studio Code IDE Xem trước
    2. Cài đặt tiện ích mở rộng Live Server Extension cho Visual Studio Code
  2. HTML5 là gì? Các thẻ (tag) HTML cơ bản 19
    1. HTML là gì? Cú pháp sử dụng thẻ (tag) trong HTML
    2. Khác biệt giữa HTML và HTML5
    3. Cấu trúc file HTML5 cơ bản
    4. Các Quy tắc và Quy ước nên tuân theo khi lập trình web HTML5 CSS JS
    5. Các thói quen cần có khi lập trình web sử dụng HTML
    6. Các thẻ (tag) định nghĩa mô tả (meta) cho trang web
    7. Các thẻ (tag) định dạng Đề mục (Heading), Phân đoạn (Paragraph), Ngắt dòng (Break) cho văn bản (Text)
    8. Các thẻ (tag) tạo đường kẻ ngang (Horizontal Rule)
    9. Các thẻ (tag) định dạng kiểu font chữ
    10. Các thẻ (tag) định dạng hiển thị cho văn bản (text)
    11. Phân biệt 2 họ font chữ phổ biến SERIF và SANS SERIF
    12. Các thẻ (tag) tạo Siêu liên kết (hyperlink)
    13. Các thẻ (tag) tạo Danh sách (list)
    14. Các thẻ (tag) chèn hình ảnh vào trang web
    15. Các thẻ (tag) chèn các đối tượng đa phương tiện (audio, video) vào trang web
    16. Các thẻ (tag) làm thanh tự động cuộn nội dung trong trang web
    17. Các ký tự đặc biệt trong HTML
    18. Thẻ (tag) IFRAME để nhúng trang web khác vào trang web của mình
    19. Các loại font chữ phổ biến trong thiết kế web SERIF, SANS SERIF, DISPLAY, HANDWRITING, MONOSPACE
  3. Thiết kế bố cục trang web (layout) 12
    1. Thẻ TABLE (TABLE tag) là gì?
    2. Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag)
    3. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Đơn giản
    4. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang chủ
    5. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Giới thiệu
    6. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Liên hệ
    7. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Danh sách Sản phẩm
    8. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Sản phẩm chi tiết
    9. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Giỏ hàng
    10. Bài tập - Thiết kế bố cục trang web sử dụng thẻ TABLE (TABLE tag) - Web Bán hàng - Trang Tìm kiếm
    11. Thẻ DIV (DIV tag) là gì?
    12. Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag)
  4. Tạo biểu mẫu nhập liệu sử dụng thẻ (tag) FORM 21
    1. Biểu mẫu nhập liệu (form) là gì? Thường được sử dụng vào mục đích gì?
    2. Tạo ô nhập liệu INPUT 1 dòng (single line text)
    3. Tạo ô nhập liệu TEXTAREA nhiều dòng (multiline text)
    4. Tạo ô nhập liệu INPUT dạng ẩn (hidden)
    5. Tạo nút bấm BUTTON
    6. Tạo ô nhập liệu CHECKBOX chọn 1 hoặc nhiều những tùy chọn
    7. Tạo ô nhập liệu RADIO chọn 1 trong những tùy chọn
    8. Tạo ô nhập liệu SELECT cho phép chọn lựa tùy chọn
    9. Tạo ô nhập liệu INPUT kiểu COLOR
    10. Tạo ô nhập liệu INPUT kiểu DATE
    11. Tạo ô nhập liệu INPUT kiểu EMAIL
    12. Tạo ô nhập liệu INPUT kiểu NUMBER
    13. Tạo ô nhập liệu INPUT kiểu RANGE
    14. Tạo ô nhập liệu INPUT kiểu TEL (số điện thoại)
    15. Tạo ô nhập liệu INPUT kiểu TIME
    16. Tạo ô nhập liệu INPUT kiểu URL
    17. Tạo thanh đo lường METER
    18. Tạo thanh tiến trình PROGRESS
    19. Tạo biểu mẫu (Form) đặt vé Máy bay
    20. Tạo biểu mẫu (Form) Đăng nhập
    21. Tạo biểu mẫu (Form) Đăng ký
  5. CSS là gì? 33
    1. CSS là gì? Cú pháp sử dụng CSS
    2. Các cách áp dụng CSS để định dạng trang web
    3. Các thuộc tính CSS định dạng font chữ
    4. Các thuộc tính CSS quy định màu sắc đối tượng
    5. Đơn vị đo lường trong CSS
    6. Bài tập - Tạo menu ngang đa cấp bằng CSS
    7. Các thuộc tính quy định Kích thước và Khoảng cách của các phần tử
    8. Tìm hiểu về Thuộc tính vị trí Position trong CSS
    9. Tìm hiểu các thuộc tính quy định vị trí Trôi nổi, Dàn hàng ngang sử dụng Float Left, Float Right trong CSS
    10. Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag), thuộc tính CSS Float left, right và kỹ thuật sử dụng điểm ngắt CSS class clear-fix
    11. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Header phong cách 1
    12. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Header phong cách 2
    13. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Header phong cách 3
    14. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Call for Action
    15. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Feature Product
    16. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Services
    17. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Team
    18. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Experience
    19. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Portfolio phong cách 1
    20. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Portfolio phong cách 2
    21. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Our Portfolio phong cách 3
    22. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Statistic
    23. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Testimonials
    24. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Pricing Tables
    25. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Get in touch phong cách 1
    26. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Get in touch phong cách 2
    27. Bài tập - Thiết kế bố cục trang web sử dụng thẻ DIV (DIV tag) - Footer
    28. Bộ lựa chọn đặc biệt theo trạng thái Pseudo Class và Pseudo Element trong CSS
    29. Bộ lựa chọn trong CSS (CSS Selector)
    30. Sử dụng CSS để làm nhà sáng tạo Nghệ thuật sắp xếp trình bày chữ Typography
    31. Hướng dẫn phân tích Bố cục (layout) Web bán hàng Thực phẩm Dinh dưỡng Organic
    32. Tư duy Thiết kế Khung cần có khi xây dựng giao diện Một Trang web
    33. Tìm hiểu toàn diện về thuộc tính trình diễn ảnh object-fit trong CSS
  6. Javascript căn bản 9
    1. Javascript là gì? Ứng dụng của Javascript
    2. Các cách sử dụng Javascript trong trang web
    3. Biến trong Javascript
    4. Hàm trong Javascript
    5. Lab 01 - tạo chương trình tính toán cơ bản
    6. Bài tập Ghép chuỗi String
    7. Kiểm tra Kiến thức JS
    8. Cấu trúc điều khiển sử dụng IF ELSE
    9. Cách lấy dữ liệu Người dùng từ Biểu mẫu (FORM)
  7. JQuery căn bản 10
    1. Giới thiệu JQuery và ứng dụng của JQuery trong thiết kế, lập trình web
    2. Cú pháp của JQUERY và cách sử dụng JQUERY trong trang web
    3. Tìm hiểu quy tắc vận hành của JQUERY
    4. Toàn tập về Bộ lựa chọn (selector)
    5. Bài tập Tạo trang tùy chỉnh Nội dung và Giao diện bằng JQUERY
    6. Bài tập Thực thi một hàm xử lý sau một khoảng thời gian bằng hàm setTimeout
    7. Bài tập Thực thi một hàm xử lý liên tục sau 1 khoảng thời gian bằng hàm setInterval
    8. Thu thập dữ liệu người dùng nhập trong FORM bằng JQUERY
    9. Tích hợp bộ công cụ Soạn thảo văn bản Trực quan WYSIWYG CKEDITOR
    10. Tích hợp công cụ chọn Ngày Tháng Date Picker
  8. Bootstrap là gì? JQuery là cái chi? 8
    1. Giới thiệu Bootstrap
    2. Cách sử dụng Bootstrap trong dự án của bạn
    3. Hệ thống Lưới (GRID) của Bootstrap
    4. Bài tập - Thiết kế Bố cục (layout) bằng Bootstrap
    5. Ràng buộc dữ liệu (validation) bằng Bootstrap
    6. Bài tập Tổng hợp - Thực hiện Trang web Landing Page giới thiệu Công ty
    7. Thiết kế trang web bố cục (layout) tùy biến theo từng thiết bị màn hình (Responsive)
    8. Tùy biến giao diện theo từng thiết bị màn hình (Responsive) bằng kỹ thuật CSS Media Query
  9. Làm Đồ án Web thực tế Trang bán hàng Nền Tảng phiên bản Bootstrap 14
    1. Lộ trình (Roadmap) Thực hiện Đồ án
    2. Khởi tạo thư mục dự án
    3. Phân tích Bố cục (layout)
    4. Xây dựng Trang chủ (index)
    5. Xây dựng Trang Giới thiệu (about)
    6. Xây dựng Trang Liên hệ (contact)
    7. Xây dựng Trang Danh sách Sản phẩm (products)
    8. Xây dựng Trang Chi tiết Sản phẩm (product_detail)
    9. Xây dựng Trang Giỏ hàng (cart)
    10. Xây dựng Trang Thanh toán (checkout)
    11. Xây dựng Trang Đăng nhập (login)
    12. Xây dựng Trang Đăng ký (register)
    13. Xây dựng Trang Tìm kiếm (search)
    14. Thưởng thức Kết quả (demo version)
  10. Kiểm tra
  11. Tài liệu tham khảo 4
    1. Kho sách, nguồn tài liệu tham khảo Lập trình web Frontend HTML CSS JS
    2. SourceCode tham khảo Lập trình web Frontend HTML CSS JS
    3. Các thể loại Menu trong Thiết kế Web
    4. Tổng hợp các công cụ tự sinh Giao diện HTML, CSS, JS tuyệt vời dành cho Nhà phát triển thiết kế Web
  12. VueJS 7
    1. VueJS là gì? Ứng dụng của VueJS trong phát triển web FrontEnd
    2. Tìm hiểu Kiến trúc Hệ thống Web MVVM - Model View ViewModel
    3. Component trong VueJS
    4. Kiểm tra ràng buộc dữ liệu (validation) bằng VueJS và Bootstrap đơn giản
    5. Kiểm tra ràng buộc dữ liệu (Validation) bằng VueJS và Bootstrap
    6. Bài tập - Sử dụng Bootstrap và VueJS để thiết kế Trang Tuyển dụng các Vị trí Việc làm Công nghệ
    7. Test
  13. UI/UX trong lập trình Web 2
    1. Tìm hiểu về khái niệm UI/UX trong thiết kế ứng dụng
    2. Quy trình Xây dựng, Thiết kế một trang Web
  14. CSS Flexbox 1
    1. Tạo cấu trúc Dòng x Cột trong CSS Flexbox
  15. Extras 2
    1. Bài tập xử lý lưu trữ dữ liệu với LocalStorage
    2. Tạo hiệu ứng chuyển động animation với tính năng motion-path CSS
  16. Video khóa học 1
    1. Video khóa học toàn tập

Bài học trước Bài học tiếp theo