Lấy giá trị checkbox checked bằng Javascript

DEMO

Giả sử có chương trình lấy thông tin về sở thích của người dùng, mỗi sở thích là một checkbox và nếu người dùng thích cái nào thì check vào cái đó. Hãy tạo ra một button xử lý khi click vào button đó thì hiển thị danh sách các sở thích mà người dùng đa chọn.

Để lấy giá trị của checkbox thì ta sử dụng cú pháp như sau.

checkboxObj.value

Trong đó checkboxObj là một đối tượng HTML được lấy bởi DOM (tham khảo một số cách truy vấn DOM thông dụng).

Nếu checkboxObj là một mảng các đối tượng checkbox thì bạn phải sử dụng vòng lặp để lặp qua từng phần tử và lấy giá trị. Như trong đề bài này là ta thấy có nhiều checkbox nên chắc chắn là phải sử dụng cách này.

Bài giải tham khảo RUN
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Javascript Example</title>
    </head>
    <body>
        <h2>Lấy giá trị của checkbox bằng Javascript</h2>
        <p>Hãy viết chương trình khi click vào button thì in ra danh sách sở thích mà người dùng đã chọn.</p>
        
        <input type="checkbox" name="hobby" value="Đi chơi"/> <label>Đi chơi</label> <br/>
        <input type="checkbox" name="hobby" value="Đi du lịch"/> <label>Đi du lịch</label> <br/>
        <input type="checkbox" name="hobby" value="Đi ăn"/> <label>Đi ăn</label> <br/>
        <input type="checkbox" name="hobby" value="Đi siêu thị"/> <label>Đi siêu thị</label> <br/>
        <input type="checkbox" name="hobby" value="học lập trình"/> <label>học lập trình</label> <br/>
        <input type="checkbox" name="hobby" value="Lướt freetuts.net"/> <label>Lướt freetuts.net</label> 
            <br/> <br/>
        
        <input type="button" id="btn" value="Xem kết quả"/>
        
        <script language="javascript">
            document.getElementById('btn').onclick = function()
            {
                // Khai báo tham số
                var checkbox = document.getElementsByName('hobby');
                var result = "";
                
                // Lặp qua từng checkbox để lấy giá trị
                for (var i = 0; i < checkbox.length; i++){
                    if (checkbox[i].checked === true){
                        result += ' [' + checkbox[i].value + ']';
                    }
                }
                
                // In ra kết quả
                alert("Sở thích là: " + result);
            };
        </script>
    </body>
</html>

Học Javascript qua các bài tập thực hành

Bạn muốn học và nắm bắt Javascript một cách nhanh nhất thì khoá học Javascript từ đầu sẽ giúp bạn, đây là khóa học được biên soạn dành cho người mới học, và mọi thứ sẽ thông qua thực hành, bạn sẽ dễ dàng nắm bắt và nhớ lâu hơn. Bạn sẽ được học xử kỹ thuật lý các hiệu ứng, thao tác với DOM, BOM và nhiều kỹ thuật khác.

Nguồn: freetuts.net

KHÓA HỌC ĐANG GIẢM GIÁ

FEDU - 25 – Thiết kế hiệu ứng bằng Javascript và illustrator

(Giảng viên: NGUYỄN ĐỨC VIỆT )

XEM
FEDU - 22 – Học tất tần tật về Javascript từ đầu

(Giảng viên: Nguyễn Đức Việt)

XEM
UNICA - Học lập trình JAVASCRIPT

(Giảng viên: )

XEM