Làm bài kiểm tra trắc nghiệm sử dụng mảng JavaScript
“Làm cách nào để tôi thực hiện một bài kiểm tra JavaScript?” . Câu đố rất thú vị. Chúng là một cách tuyệt vời để tìm hiểu về các chủ đề mới và chúng cho phép bạn thu hút khán giả của mình bằng nội dung thú vị và vui tươi Show
Viết mã bài kiểm tra JavaScript của riêng bạn cũng là một bài tập học tập tuyệt vời. Nó hướng dẫn bạn cách xử lý các sự kiện, thao tác với DOM, xử lý đầu vào của người dùng, đưa ra phản hồi cho người dùng và theo dõi điểm số của họ (ví dụ: sử dụng bộ nhớ phía máy khách). Và khi bạn thiết lập và chạy một bài kiểm tra cơ bản, sẽ có rất nhiều khả năng để thêm chức năng nâng cao hơn, chẳng hạn như phân trang. tôi đi vào vấn đề này tại Trong hướng dẫn này, tôi sẽ hướng dẫn bạn cách tạo bài kiểm tra JavaScript gồm nhiều bước mà bạn có thể điều chỉnh theo nhu cầu của mình và thêm vào trang web của riêng mình. Nếu bạn muốn xem những gì chúng tôi sẽ kết thúc, bạn có thể bỏ qua và xem Để biết thêm kiến thức chuyên sâu về JavaScript và các thách thức, hãy đọc cuốn sách miễn phí của chúng tôi. Học cách viết mã bằng JavaScript Những điều cần lưu ý trước khi bắt đầuMột vài điều cần biết trước khi bắt đầu
Cấu trúc cơ bản của bài kiểm tra JavaScript của bạnLý tưởng nhất là chúng tôi muốn các câu hỏi và câu trả lời của bài kiểm tra nằm trong mã JavaScript của mình và để tập lệnh của chúng tôi tự động tạo bài kiểm tra. Bằng cách đó, chúng tôi sẽ không cần phải viết nhiều đánh dấu lặp đi lặp lại và chúng tôi có thể thêm và xóa câu hỏi một cách dễ dàng Để thiết lập cấu trúc bài kiểm tra JavaScript của chúng tôi, chúng tôi sẽ cần bắt đầu với HTML sau
Đây là cách nó sẽ trông như thế nào
Sau đó, chúng tôi có thể chọn các phần tử HTML này và lưu trữ các tham chiếu đến chúng trong các biến như vậy
Tiếp theo, chúng ta sẽ cần một cách để xây dựng bài kiểm tra, hiển thị kết quả và kết hợp tất cả lại với nhau. Chúng ta có thể bắt đầu bằng cách đặt ra các chức năng của mình và chúng ta sẽ điền chúng vào khi chúng ta tiếp tục
Ở đây, chúng ta có chức năng xây dựng bài kiểm tra và hiển thị kết quả. Chúng tôi sẽ chạy chức năng 8 của mình ngay lập tức và chúng tôi sẽ chạy chức năng 9 khi người dùng nhấp vào nút gửiHiển thị câu hỏi trắc nghiệmĐiều tiếp theo bài kiểm tra của chúng tôi cần là một số câu hỏi để hiển thị. Chúng tôi sẽ sử dụng các đối tượng bằng chữ để thể hiện các câu hỏi riêng lẻ và một mảng để chứa tất cả các câu hỏi tạo nên bài kiểm tra của chúng tôi. Sử dụng một mảng sẽ làm cho các câu hỏi dễ dàng lặp đi lặp lại ________số 8_______Vui lòng đặt bao nhiêu câu hỏi hoặc câu trả lời tùy thích Ghi chú. vì đây là một mảng, các câu hỏi sẽ xuất hiện theo thứ tự được liệt kê. Nếu bạn muốn sắp xếp các câu hỏi theo bất kỳ cách nào trước khi trình bày chúng cho người dùng, hãy xem mẹo nhanh của chúng tôi về cách sắp xếp một mảng các đối tượng trong JavaScript Bây giờ chúng tôi có danh sách các câu hỏi, chúng tôi có thể hiển thị chúng trên trang. Chúng ta sẽ đi qua từng dòng JavaScript sau để xem nó hoạt động như thế nào
Đầu tiên, chúng tôi tạo một biến 0 để chứa tất cả đầu ra HTML bao gồm các câu hỏi và lựa chọn trả lờiTiếp theo, chúng ta có thể bắt đầu xây dựng HTML cho từng câu hỏi. Chúng ta sẽ cần lặp lại từng câu hỏi như vậy
Để cho ngắn gọn, chúng tôi đang sử dụng chức năng mũi tên để thực hiện các thao tác của mình đối với từng câu hỏi. Vì đây là vòng lặp forEach, nên chúng ta lấy giá trị hiện tại, chỉ mục (số vị trí của mục hiện tại trong mảng) và chính mảng đó làm tham số. Chúng tôi chỉ cần giá trị hiện tại và chỉ mục, vì mục đích của chúng tôi, chúng tôi sẽ đặt tên lần lượt là 1 và 2Bây giờ hãy xem mã bên trong vòng lặp của chúng ta
Đối với mỗi câu hỏi, chúng tôi sẽ muốn tạo HTML chính xác và vì vậy, bước đầu tiên của chúng tôi là tạo một mảng để chứa danh sách các câu trả lời có thể Tiếp theo, chúng ta sẽ sử dụng một vòng lặp để điền vào các câu trả lời có thể có cho câu hỏi hiện tại. Đối với mỗi lựa chọn, chúng tôi đang tạo một nút radio HTML, mà chúng tôi đặt trong phần tử 3. Điều này là để người dùng có thể nhấp vào bất kỳ đâu trên văn bản câu trả lời để chọn câu trả lời đó. Nếu nhãn bị bỏ qua, thì người dùng sẽ phải nhấp vào chính nút radio, nút này rất khó truy cậpLưu ý rằng chúng tôi đang sử dụng các mẫu chữ, là các chuỗi nhưng mạnh hơn. Chúng tôi sẽ tận dụng các tính năng sau
Khi chúng tôi có danh sách các nút trả lời, chúng tôi có thể đẩy HTML câu hỏi và HTML câu trả lời vào danh sách đầu ra tổng thể của chúng tôi Lưu ý rằng chúng tôi đang sử dụng một mẫu chữ và một số biểu thức được nhúng để tạo div câu hỏi trước tiên và sau đó tạo div câu trả lời. Biểu thức 5 lấy danh sách các câu trả lời của chúng ta và đặt chúng lại với nhau thành một chuỗi mà chúng ta có thể xuất ra div 6Bây giờ chúng tôi đã tạo HTML cho mỗi câu hỏi, chúng tôi có thể kết hợp tất cả lại với nhau và hiển thị trên trang
Bây giờ hàm 8 của chúng ta đã hoàn thànhBạn sẽ có thể chạy bài kiểm tra vào thời điểm này và xem các câu hỏi được hiển thị. Tuy nhiên, xin lưu ý rằng cấu trúc mã của bạn rất quan trọng. Do một thứ gọi là vùng chết tạm thời, bạn không thể tham chiếu mảng câu hỏi của mình trước khi nó được xác định Tóm lại, đây là cấu trúc chính xác
Hiển thị kết quả bài kiểm traTại thời điểm này, chúng tôi muốn xây dựng hàm 9 để lặp lại các câu trả lời, kiểm tra chúng và hiển thị kết quảĐây là chức năng mà chúng ta sẽ xem xét chi tiết tiếp theo
Đầu tiên, chúng tôi chọn tất cả các vùng chứa câu trả lời trong HTML của bài kiểm tra của chúng tôi. Sau đó, chúng tôi sẽ tạo các biến để theo dõi câu trả lời hiện tại của người dùng và tổng số câu trả lời đúng 0Bây giờ chúng ta có thể lặp lại từng câu hỏi và kiểm tra câu trả lời 1Ý chính chung của mã này là
Hãy xem xét kỹ hơn cách chúng tôi tìm câu trả lời đã chọn trong HTML của mình 2Trước tiên, chúng tôi đảm bảo rằng chúng tôi đang tìm kiếm bên trong hộp chứa câu trả lời cho câu hỏi hiện tại Trong dòng tiếp theo, chúng tôi đang xác định bộ chọn CSS sẽ cho phép chúng tôi tìm thấy nút radio nào được chọn Sau đó, chúng tôi đang sử dụng 9 của JavaScript để tìm kiếm bộ chọn CSS của chúng tôi trong 0 đã xác định trước đó. Về bản chất, điều này có nghĩa là chúng ta sẽ tìm thấy nút radio của câu trả lời nào được chọnCuối cùng, chúng ta có thể nhận được giá trị của câu trả lời đó bằng cách sử dụng 1Xử lý đầu vào của người dùng không đầy đủNhưng nếu người dùng để trống câu trả lời thì sao? . Để giải quyết vấn đề này, chúng tôi đã thêm 3, có nghĩa là “hoặc”, và 4, là một đối tượng trống. Bây giờ tuyên bố tổng thể nói
Do đó, giá trị sẽ là câu trả lời của người dùng hoặc 5, có nghĩa là người dùng có thể bỏ qua câu hỏi mà không làm hỏng bài kiểm tra của chúng tôiĐánh giá câu trả lời và hiển thị kết quảCác câu lệnh tiếp theo trong vòng kiểm tra câu trả lời của chúng tôi sẽ cho phép chúng tôi xử lý các câu trả lời đúng và sai 3Nếu câu trả lời của người dùng khớp với lựa chọn đúng, hãy tăng số câu trả lời đúng lên một và (tùy chọn) tô màu xanh lục cho tập hợp các lựa chọn. Nếu câu trả lời sai hoặc để trống, hãy tô màu đỏ cho các lựa chọn trả lời (một lần nữa, tùy chọn) Khi vòng kiểm tra câu trả lời kết thúc, chúng tôi có thể hiển thị số lượng câu hỏi mà người dùng đã trả lời đúng 4Và bây giờ chúng ta có một bài kiểm tra JavaScript đang hoạt động Nếu muốn, bạn có thể bọc toàn bộ bài kiểm tra trong một IIFE (biểu thức hàm được gọi ngay lập tức), đây là hàm sẽ chạy ngay khi bạn xác định nó. Điều này sẽ giữ cho các biến của bạn nằm ngoài phạm vi toàn cầu và đảm bảo rằng bài kiểm tra của bạn không can thiệp vào bất kỳ tập lệnh nào khác đang chạy trên trang 5Bây giờ bạn đã sẵn sàng. Vui lòng thêm hoặc xóa câu hỏi và câu trả lời cũng như tạo kiểu cho bài kiểm tra theo cách bạn muốn Tại thời điểm này, bài kiểm tra của bạn có thể trông như thế này (với một chút kiểu dáng) Xem cây bút Thêm phân trangBây giờ chúng ta đã chạy bài kiểm tra cơ bản, hãy xem xét một số tính năng nâng cao hơn. Ví dụ: giả sử bạn chỉ muốn hiển thị một câu hỏi tại một thời điểm Có thể bạn sẽ cần
Chúng tôi sẽ cần thực hiện một số cập nhật, vì vậy hãy bắt đầu với HTML 6Hầu hết đánh dấu đó giống như trước đây, nhưng bây giờ chúng tôi đã thêm các nút điều hướng và vùng chứa bài kiểm tra. Bộ chứa bài kiểm tra sẽ giúp chúng tôi định vị các câu hỏi dưới dạng các lớp mà chúng tôi có thể hiển thị và ẩn Tiếp theo, bên trong hàm 8, chúng ta cần thêm một phần tử 5 với lớp 8 để chứa các bộ chứa câu hỏi và câu trả lời mà chúng ta vừa tạo 7Tiếp theo, chúng ta có thể sử dụng một số định vị CSS để làm cho các trang trình bày xếp thành các lớp chồng lên nhau. Trong ví dụ này, bạn sẽ nhận thấy chúng tôi đang sử dụng chỉ mục z và chuyển đổi độ mờ để cho phép các trang trình bày của chúng tôi mờ dần trong và ngoài. Đây là CSS đó có thể trông như thế nào 8Bây giờ chúng ta sẽ thêm một số JavaScript để làm cho việc phân trang hoạt động. Như trước đây, thứ tự là quan trọng, vì vậy đây là cấu trúc sửa đổi của mã của chúng tôi 9Chúng ta có thể bắt đầu với một số biến để lưu trữ các tham chiếu đến các nút điều hướng của mình và theo dõi xem chúng ta đang ở trang trình bày nào. Thêm những thứ này sau cuộc gọi đến 9, như được hiển thị ở trên 0Tiếp theo chúng ta sẽ viết hàm trình chiếu slide. Thêm phần này bên dưới các chức năng hiện có ( 8 và 9) 1Đây là những gì ba dòng đầu tiên làm
Các dòng tiếp theo giới thiệu logic sau
Sau khi chúng tôi đã viết chức năng của mình, chúng tôi có thể gọi ngay 4 để hiển thị trang trình bày đầu tiên. Điều này sẽ đến sau mã phân trang 2Tiếp theo chúng ta có thể viết các hàm để làm cho các nút điều hướng hoạt động. Chúng nằm bên dưới hàm 5 3Ở đây, chúng tôi đang sử dụng chức năng 5 để cho phép các nút điều hướng hiển thị trang trình bày trước và trang trình bày tiếp theoCuối cùng, chúng ta sẽ cần kết nối các nút điều hướng với các chức năng này. Điều này đến ở phần cuối của mã 4Bây giờ, bài kiểm tra của bạn đã có điều hướng hoạt động Xem cây bút Cái gì tiếp theo?Bây giờ bạn đã có một bài kiểm tra JavaScript cơ bản, đã đến lúc sáng tạo và thử nghiệm Dưới đây là một số gợi ý bạn có thể thử
Chia sẻ bài viết nàyYaphi Berhanu Yaphi Berhanu là một nhà phát triển web thích giúp mọi người nâng cao kỹ năng viết mã của họ. Anh ấy viết mẹo và thủ thuật tại http. //mã bước đơn giản. com. Theo ý kiến hoàn toàn không thiên vị của mình, anh ấy đề nghị kiểm tra nó Làm cách nào để tạo bài kiểm tra trắc nghiệm bằng JavaScript?InternalHTML = ''; . InternalHTML = câu hỏi;
Làm cách nào để tạo bài kiểm tra với các câu hỏi ngẫu nhiên bằng JavaScript?//biến var đố = []; quiz[0] = new Question("1/4 của 100 bằng bao nhiêu?", ". quiz[1] = new Question("Máu màu gì?", ". quiz[2] = new Question("Cỏ màu gì?", ". quiz[3] = new Question("Con nhện có bao nhiêu chân?", ". quiz[4] = new Question("Ai là vua của Hà Lan?", " Làm cách nào để làm cho các câu hỏi đố xuất hiện cùng một lúc trong JavaScript?Đây là mã cho div. div. innerHTML = ` name}
Mảng Mcq là gì?Mảng được định nghĩa là tập hợp các loại mục dữ liệu tương tự được lưu trữ tại các vị trí bộ nhớ liền kề . Mảng là kiểu dữ liệu dẫn xuất trong ngôn ngữ lập trình C, có thể lưu trữ kiểu dữ liệu nguyên thủy như int, char, double, float, v.v. |