jQuery: 데이터 속성으로 선택

Habdul Hazeez 2024년2월15일
  1. HTML 태그를 사용하여 사용자 정의 데이터 속성 선택
  2. jQuery 선택기를 사용하여 사용자 정의 데이터 속성 선택
jQuery: 데이터 속성으로 선택

이 기사에서는 jQuery를 사용하여 사용자 정의 HTML5 데이터 속성을 선택하는 두 가지 방법을 설명합니다. 첫 번째 방법은 주변 HTML 태그를 사용하여 데이터 속성을 선택합니다.

두 번째 방법은 jQuery API 문서에 정의된 jQuery 선택자를 사용합니다.

HTML 태그를 사용하여 사용자 정의 데이터 속성 선택

주변 HTML 태그를 프록시로 사용하여 사용자 정의 데이터 속성을 선택할 수 있습니다. 일반적인 CSS 속성 선택기를 사용하여 데이터 속성을 선택할 수 있습니다.

다음에서 코드의 HTML 부분에는 <ul> 태그로 표시된 HTML 정렬되지 않은 목록이 포함되어 있습니다. 이 목록에는 data-group 속성과 값이 있습니다. jQuery 코드에서 전자와 후자를 사용합니다.

또한 목록 항목에는 data-company 속성과 값이 있습니다. HTML 태그를 사용하여 이러한 속성을 선택할 수 있습니다. 그것이 우리가 다음 코드에서 한 일입니다.

<!DOCTYPE html>
<html lang="en">
<head>
	<title>01-jQuery-select-data-by-attribute</title>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js" integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
	<style>
		ul {
			font: 1.2em/1.618 "Trebuchet MS", Verdana, Helvetica, sans-serif;
		}
	</style>
</head>
<body>
	<div class="main">
		<ul data-group="FAANG">
			<li data-company="Facebook">Facebook</li>
			<li data-company="Apple">Apple</li>
			<li data-company="Amazon">Amazon</li>
			<li data-company="Netflix">Netflix</li>
			<li data-company="Google">Google</li>
		</ul>
	</div>
	<script>
		// Select the data-company attribute that belongs
		// to Google, and leave out the rest.
		$("ul[data-group='FAANG'] li[data-company='Google']").css({
			'color': '#db4437',
			'font-weight': 'bold'
		});

		// Select all data-company attributes except that
		// of Google. The li:not() selector makes this
		// possible.
		$("ul[data-group='FAANG'] li:not([data-company='Google'])").css('color', '#1560bd');
	</script>
</body>
</html>

출력:

HTML 태그를 프록시로 사용하여 jQuery 데이터 속성 선택

jQuery 선택기를 사용하여 사용자 정의 데이터 속성 선택

jQuery 라이브러리에는 사용자 정의 HTML5 데이터 속성을 선택하는 데 사용할 수 있는 선택기가 있습니다. 이러한 선택기는 정규식을 사용하는 패턴 일치처럼 작동합니다.

결과적으로 관련 특성이 있는 데이터 속성을 선택할 수 있습니다. 다음에서는 다양한 데이터 속성과 일치하는 선택기를 보여줍니다.

<!DOCTYPE html>
<html lang="en">
<head>
    <title>02-jQuery-select-data-by-attribute</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js" integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
    <style>
        ul {
            font: 1.2em/1.618 "Trebuchet MS", Verdana, Helvetica, sans-serif;
        }
    </style>
</head>
<body>
    <div class="main">
        <ul data-group="FAANG">
            <li data-company="Facebook">Facebook</li>
            <li data-company="Apple">Apple</li>
            <li data-company="Amazon">Amazon</li>
            <li data-company="Netflix">Netflix</li>
            <li data-company="Google">Google</li>
        </ul>
    </div>
    <script>
        //stored selector
        let parent_list = $('ul[data-group="FAANG"]');

        // Select data-company that starts with "A"
        let company_that_start_with_letter_a = $('[data-company^="A"]', parent_list).css({
            'color': '#ff9900',
            'font-weight': 'bold'
        });

        // Select data-company that contains "Face"
        let company_that_contains_face = $('[data-company*="Face"]', parent_list).css({
            'color': '#4267b2',
            'font-style': 'italic'
        });

        // Select data-company that ends with "flix"
        let company_that_ends_with_flix = $('[data-company$="flix"]', parent_list).css({
            'color': '#e50914',
            'text-decoration': 'underline'
        });
    </script>
</body>
</html>

출력:

jQuery 선택기를 사용하여 데이터 속성 선택

Habdul Hazeez avatar Habdul Hazeez avatar

Habdul Hazeez is a technical writer with amazing research skills. He can connect the dots, and make sense of data that are scattered across different media.

LinkedIn

관련 문장 - jQuery Attribute