๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅ๏ธ ํ”„๋ก ํŠธ์—”๋“œ/JavaScript

[JQuery] ์ œ์ด์ฟผ๋ฆฌ ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•

by OR15A 2023. 12. 5.



script - jquery ํ•„๊ธฐ

  • HTMLํƒœ๊ทธ๋“ค์€ ํ™”๋ฉด์— UI์š”์†Œ๋ฅผ ๋ณด์—ฌ์ฃผ๊ณ  ์ž…๋ ฅ์€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋Š” ์•ˆ๋จ.
  • HTML ํƒœ๊ทธ์™€ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด์„œ๋Š” ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ํ•„์š”ํ•จ. javaScript,jquery
  • jquery๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์„ ์–ธ ํ•„์š”ํ•จ
    <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> 

์ œ์ด์ฟผ๋ฆฌ ๊ธฐ๋ณธ๋ฌธ๋ฒ•

$().  //์ œ์ด์ฟผ๋ฆฌ ๊ธฐ๋ณธ ๋ฌธ๋ฒ•
$("selector").api();

์ฝ”๋“œ ์ž‘์„ฑ ์ค€๋น„

  • ์˜›๋‚  ๋ฐฉ๋ฒ•

    $(document).ready(function() {
    // ์—ฌ๊ธฐ์— jQuery ์ฝ”๋“œ ์ž‘์„ฑ
    });
  • ๊ฐ„๊ฒฐํ•˜๊ณ  ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ•

    $(function() {
    // ์—ฌ๊ธฐ์— jQuery ์ฝ”๋“œ ์ž‘์„ฑ
    });
  • ๋ชจ๋“  ํŒŒ์ผ์€ ์œ„์—์„œ ๋ถ€ํ„ฐ ์ฝ๊ธฐ ๋•Œ๋ฌธ์— ํƒœ๊ทธ ์ผ๊ธฐ ์ „์— ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์žˆ๋‹ค๋ฉด ์˜จ์ „ํžˆ ๋กœ๋”ฉ ๋ชป๋จ.

  • ๋Œ€์‹  function์•ˆ์— ๊ฐ€๋‘ฌ๋†“์œผ๋ฉด ๋ฐ”๋กœ ์‹คํ–‰๋˜์ง€ ์•Š์Œ

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ function์€ jquery์˜ function๊ณผ ๋ถ„๋ฆฌํ•ด์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•จ(์ฃผ์˜)


ํƒœ๊ทธ ์ œ์–ด

  • ์ œ์–ดํ•˜๊ณ  ์‹ถ์€ ํƒœ๊ทธ ์ฐพ๊ธฐ
    • id ์ด์šฉํ•˜๊ธฐ: $("ํƒœ๊ทธ์˜_์•„์ด๋””")
    • class ์ด์šฉํ•˜๊ธฐ: $("ํƒœ๊ทธ์˜_ํด๋ž˜์Šค")
    • name ์ด์šฉํ•˜๊ธฐ: $("ํƒœ๊ทธ์˜_๋„ค์ž„")
    • ํƒœ๊ทธ ์ด์šฉํ•˜๊ธฐ: $("ํƒœ๊ทธ_์ข…๋ฅ˜")
    • ์†์„ฑ ์ด์šฉํ•˜๊ธฐ: $("[์†์„ฑ=์†์„ฑ๊ฐ’]")
<script>
    $(function() {

        $("ํƒœ๊ทธ์˜_์•„์ด๋””"): $("#infoBtn")

        $("ํƒœ๊ทธ์˜_ํด๋ž˜์Šค"): $(".btnClass")

        $("ํƒœ๊ทธ์˜_๋„ค์ž„"): $("[name=infoBtn]")

        $("ํƒœ๊ทธ_์ข…๋ฅ˜"): $("input")

        $("[์†์„ฑ=์†์„ฑ๊ฐ’]"): $("disabled=disabled")   $("type=button")

    };
</script>
<body>
    <input type="button" name="infoBtn" id="infoBtn" class="btbClass" disabled="disabled"></input>
</body>

  • ์†์„ฑ์ด ์—†๋Š” ํƒœ๊ทธ์˜ ์ œ์–ด ๋ฐฉ๋ฒ•

      <table border = "1">
          <tr>
              <th></th>
          </tr>
          <tr>
              <td>aaa</td>
              <td>111</td>
              <td>qwer</td>
              <td>zxcv</td>
              <td>123qqq</td>
          </tr>
      </table>
  • ๊ณต๋ฐฑ ์ด์šฉํ•˜๊ธฐ

    $("table tr td")
  • ๊บฝ์‡  ์ด์šฉํ•˜๊ธฐ

    $("table > tr > td")
  • ํƒœ๊ทธ์˜ ์ข…๋ฅ˜์™€ ์ˆœ์„œ(๋ฐฐ์—ด ์ธ๋ฑ์Šค) ์ด์šฉํ•˜๊ธฐ

  • ๊ฐ™์€ ํƒœ๊ทธ๋“ค์€ ๋ฐฐ์—ด๋กœ ์ธ์‹ํ•œ๋‹ค.

  • ์ค‘๊ฐ„์— ์ถ”๊ฐ€๋˜์ง€ ์•Š์„ ๊ฒƒ์„ ๊ธฐ๋Œ€ํ•ด์•ผํ•จ. ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•˜๊ธฐ๋•Œ๋ฌธ์—

    $("td").eq().text();

  • ํƒœ๊ทธ ๊ตฌ๋ถ„์„ ์œ„ํ•œ ํŒ

  • id๋ฅผ ์„ ํƒํ•  ๋•Œ ํƒœ๊ทธ ์ข…๋ฅ˜๋ฅผ ๊ฐ™์ด ์จ์ค„ ์ˆ˜ ์žˆ์Œ

    $("#userId")  //๋™์ผ
    $("input#userId")  //๋™์ผ


value๊ฐ’

<body>
    <input type="text" name="userId" id="userId" class="userIdfo" ></input>
</body>
  • $(#userId).val(); //๊ด„ํ˜ธ๊ฐ€ ๋น„์–ด์žˆ๋Š”๊ฑด ํƒœ๊ทธ์˜ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ
  • $(#userId).val("newUserId"); //๊ด„ํ˜ธ ์•ˆ์— ๊ฐ’์„ ์ฃผ๋ฉด ์ด๊ฒƒ์œผ๋กœ ๋Œ€์ฒดํ•˜๋Š” ๊ฒƒ

value์™€ text

  • val() text()
  • value: ์ž…๋ ฅํ•ด์„œ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ๊ฐ’ ex) input,
  • text: ํƒœ๊ทธ์•ˆ์˜ ๊ฐ’์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ ex) table์˜ td
  • selectํƒœ๊ทธ์˜ optionํƒœ๊ทธ๋Š” value,text ๋‘˜ ๋‹ค ๊ฐ€๋Šฅํ•จ
  • ์˜ˆ์‹œ
        <select>
          <option value="code01">๊ฐ•์•„์ง€</option>
          <option value="code02">๊ณ ์–‘์ด</option>
          <option value="code03">์•ต๋ฌด์ƒˆ</option>
      </select>

์ด๋ฒคํŠธ ํ•จ์ˆ˜ ์ถ”๊ฐ€ํ•˜๊ธฐ

  • ์ด๋ฒคํŠธํ•จ์ˆ˜์˜ ์ด๋ฆ„์—์„œ on์„ ์ œ์™ธํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ
    $(#btn).click(function (){
    });
  • on์— ๋™์ž‘๋ฐฉ์‹๊ณผ ํ•จ์ˆ˜ ์ถ”๊ฐ€ํ•˜๊ธฐ
    $(#btn).on("click", function (){
      $(#chk).attr("checked", "checked")  //์†์„ฑ์ถ”๊ฐ€
    });
  • ์†์„ฑ ์ถ”๊ฐ€๋Š” .attr("์ถ”๊ฐ€ํ•  ์†์„ฑ", "ํ•ด๋‹น ์†์„ฑ์˜ ๊ฐ’")
    $(#chk).attr("checked", "checked")  //์†์„ฑ์ถ”๊ฐ€

ํƒœ๊ทธ ํŠน์ง•

  • ๋ณ€๊ฒฝ๋ถˆ๊ฐ€
    • disabled: ํšŒ์ƒ‰์œผ๋กœ ๋ณ€๊ฒฝ๋˜๋ฉฐ ๋น„ํ™œ์„ฑํ™”(="disabled")
    • readonly: ํด๋ฆญ๋งŒ ์•ˆ๋จ(="readonly")
    • checked: ์ฒดํฌ(="checked")
  • ์ปค์„œ ์˜ฎ๊ธฐ๊ธฐ
    • .focus()
  • ๋ฎ์–ด์“ฐ๊ธฐ
    • .html()
    • ์š”์†Œ ๋‚ด๋ถ€์˜ ๋‚ด์šฉ์„ ์™„์ „ํžˆ ๋Œ€์ฒดํ•˜๊ณ  ์ƒˆ๋กœ์šด ๋‚ด์šฉ์œผ๋กœ ๋ฎ์–ด์“ฐ๋Š” ๊ฒƒ
  • ์ถ”๊ฐ€ํ•˜๊ธฐ
    • .append()
    • ์„ ํƒํ•œ ์š”์†Œ ๋‚ด๋ถ€์˜ ๋งˆ์ง€๋ง‰ ์ž์‹ ์š”์†Œ๋กœ ์ถ”๊ฐ€๋จ

์‚ฌ์šฉ์ž๋ฅผ ๋ฐฐ๋ คํ•˜๋Š” ๋กœ์ง

  • ์ž…๋ ฅ์ด ํ‹€๋ ธ์„ ๋•Œ ํ•ด๋‹น input์นธ์œผ๋กœ focusํ•ด์ฃผ๊ธฐ
  • ์ค‘๋ณต๊ฐ’์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ์‚ญ์ œ+focus
  • ์ค‘๋ณตํ™•์ธ์ด ๋๋‚˜๋ฉด disable์†์„ฑ๊ณผ ํ•จ๊ป˜ ์ˆ˜์ • ๋ฒ„ํŠผ ์ƒ์„ฑํ•ด์ฃผ๊ธฐ

๋‹ค๋ฅธ ๊ฐ•์˜ ํ•„๊ธฐ

  • $("์…€๋ ‰ํ„ฐ").html(oo); // html์€ ๋ฎ์–ด์“ฐ๊ธฐ (๊ตณ์ด remove, append๋กœ ํ•  ํ•„์š” ์—†์Œ)
  • $("์…€๋ ‰ํ„ฐ").append(oo); // append์€ ์ถ”๊ฐ€ํ•˜๊ธฐ