TIL_220419_1
- -
ν λ² μ μ£Όν νλ μΉκ°λ° κ°μλ₯Ό λ€μ 볡μ΅νλ μ£Όκ°.
μ΄μ μ€λμ κΈ°μ€μΌλ‘ μκ°μ λͺ©νλ‘ νλ€.
λ°°μ λ λ΄μ©μ΄κΈ΄ νμ§λ§, λ€μκΈ λ€μΌλ©΄μ λ΄ κ²μΌλ‘ λ§λ€μ΄ κ°λ μ€.
νλλ¦¬μ§ λ§κ³ λμ νμ΄μ€λ₯Ό μ μ§νλ©° λμκ°λ³΄μ.
무μμ λκΌλκ°.
볡μ΅μ νλ©΄ ν μλ‘ λμ νμ¬ μ§νλ₯Ό μ μ μμλ€.
λ°°μ λ λ΄μ©μμλ λΆκ΅¬νκ³ μ°μ΅λ¬Έμ μ‘°μ°¨ μκ°μ λ€μ¬ ν΄κ²°ν μ μμλ€.
μκ°μ΄ λ¬΄μ¨ λ¬Έμ μΈκ° νκ² μ§λ§, κ·Έλ§νΌ λλ μμ§ μ΄ μ½λμ μλ¬λμ΄ μμ§ μλ€λ κ²μ μ μ μλ€.
κ·Έλλ νμ νκ² μ΄ν΄νκ³ μ°κ³ λμ΄κ°λ κ³Όμ μ΄ μ§§μμ§κ³ 2μ£Όμ°¨ κ³Όμ μ΄ λλλ©΄μ λΉ μ§μμ΄ νΌμμ ν΄κ²°ν μ μμλ€.
μ²μμλ λλ € λ©λ μ ν΄λ©νλ κ²μ΄ 무λͺ¨νλ€κ³ μκ°νμ§λ§, λλ € μ’μ κ²½νμ΄ λμλ€λ κ²μ λͺΈμ μ¦λͺ νλ€.
λͺ¨λ₯΄λλΌλ μΌλ¨ μ½λ νλ νλλ₯Ό μ νκ°λ©° μ€λ₯λ₯Ό λ°κ²¬νκ³ κ·Έ μ€λ₯λ₯Ό ν΄κ²°νκΈ° μν΄ κ΅¬κΈλ§μΌλ‘ μκ°μ ν¬μνλ κΈ°μ΅.
μ½λμ ννλ₯Ό 보며 μ΄λ€ μμ νλ¦μΈμ§ λμΌλ‘ μ΅νκ³ , μμ ν μ΄ν΄κ° μλλλΌλ μ΄λ€ λΆλΆμ΄ λ¬Έμ μμμ λ°κ²¬νλ κΈ°μ΅.
κ·Έλ¦¬κ³ μ§κΈ μ΄ μκ° λ³΅μ΅νλ©° λ€μ μ΄ν΄νλ μ΄ κ³Όμ μμμ λλ μ λλ‘ μ΄ν΄νλ κ²½νμ νκ³ μλ€.
λ°°μ°λ λ°©λ²μ΄ λ¬λμ§λ§, λ΄ κ²μΌλ‘ λ§λλ λ° ν° λμμ μ€ κ²½νλ€
ν΄λ³΄κ³ μ νλ λ§μμΌλ‘ λΉλ‘―λ μμ κ°
μμ§ λ§κ³ μ΄μ΄κ°μ.
[μ€λ ν루 νκΈ°μ λ°°μ΄ λ΄μ© κΈ°λ‘νκΈ°]
jQuery, Ajax
jQuery λ₯Ό μ΄μ©ν΄ Javascript λ‘ html μ μ½κ² μ μ΄
Ajax λ₯Ό μ΄μ©ν΄ λ€μ μλ²μ λ°μ΄ν°λ₯Ό μμ²
κ°λ¨ν νμ§ λ²νΌ
<!-- count κ° 0 μΌλ -->
let count = 0
// ν΄λ¦ μ count κ° 1μ© μ¦κ°νλ€
function hey(){
count += 1
// 쑰건 : count κ°μ 2λ‘ λλμ΄ 0μΌ λ μ§μμ΄λ©΄ μ§μ
if (count % 2 == 0) {
alert('μ§μμ
λλ€!')
// 쑰건 : κ·Έλ μ§ μμΌλ©΄ νμ
} else {
alert('νμμ
λλ€!')
}
}
jQuery λ?
HTMLμ μμλ₯Ό μ‘°μνλ, νΈλ¦¬ν Javascript λ₯Ό 미리 μμ±ν΄λ κ². λΌμ΄λΈλ¬λ¦¬!
- CSS μ λΌμ΄λΈλ¬λ¦¬. λΆνΈμ€νΈλ©!!
jQuery λ μ λ¬Έ κ°λ°μλ€μ΄ 미리 μ§λ μ½λλ₯Ό μ¬μ©νλ κ²μ΄κΈ° λλ¬Έμ μ¬μ©νκΈ° μ νμ μν¬νΈκ° νμ!!
jQuery μ Javascript λΉκ΅
Javascript
document.getElementById("element").style.display = "none";
jQuery
$('#element').hide();
Javascript μ κΈΈκ³ λ³΅μ‘ν λ°λ©΄μ jQuery λ₯Ό ν΅ν΄ μ§κ΄μ μΌλ‘ μ¬μ©ν μ μλ κ²μ λ³Ό μ μλ€.
jQuery CDN μν¬νΈ
https://www.w3schools.com/jquery/jquery_get_started.asp
jQuery Get Started
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
www.w3schools.com
<head> μ </head> μ¬μ΄μ script μΆκ°
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
jQuery CSS μ°¨μ΄
CSS λ μ νμλ₯Ό class λ‘ μ§μ
jQuery λ id κ°μ ν΅ν΄ νΉμ λ²νΌ/μΈνλ°μ€/div/.. λ±μ μ§μ
jQuery μ§λ¦¬λͺ½λ
- μΈνλ°μ€
id κ°μ λΆλ¬μ€κ³ [ .val(); ] μ λ ₯νκΈ°[ .val('_λ΄μ©μ λ ₯_'); ] μν λͺ λ Ήμ΄ $('#_id κ°_')
- λ°μ€ μ¨κΈ°κΈ°/보μ΄κΈ°
$('#_id κ°_').hide() / $('#_id κ°_').show()
- μΆκ°
$('#_id κ°_').append('_κ°_')
-- let temp_html μ λ³μμ λ°±ν±( ` ) κ°μ μΆκ° `<button>λλ λ²νΌμ΄λ€</button>`
-- let temp_html = `<button>λλ λ²νΌμ΄λ€</button>`
-- λ°±ν± μμ κ°μ μμ§ htmlμ μν μ ν μκ° μλ€. jQuery λ‘ λΆλ¬μ(.append) μ€μΌλ‘μ¨ μν μ λΆμ¬νλ€.
-- $('#_id κ°_').append(temp_html)
.includes()
λ¬Έμμ΄μ΄ νΉμ λ¬Έμμ΄μ ν¬ν¨νλμ§ νμΈνλ 맀μλ
string.includes( searchString, length )
searchString : κ²μν λ¬Έμμ΄λ‘ νμ μμ. λμλ¬Έμλ₯Ό ꡬλΆ
length : κ²μμ μμν μμΉ. μ ν μμλ‘, κ°μ΄ μμΌλ©΄ μ 체 λ¬Έμμ΄μ λμμΌλ‘ ν¨
.split()
λ¬Έμμ΄μ λΆν νλ λ©μλ
string.split( separator, limit )
separator : λΆν μ κΈ°μ€ μλ₯Ό λ€μ΄ @ λ₯Ό κΈ°μ€μΌλ‘ λΆν ν λλ '_@_'
limit : μ΅λ λΆν κ°μ. μ ν μ¬νμΌλ‘, κ°μ μ νμ§ μμΌλ©΄ μ 체λ₯Ό λ€ λΆν
JQuery μ°μ΅ λ΄ κ²μΌλ‘ λ§λ€κΈ° μ±κ³΅μ
-- λ²νΌμ λλ μ λ μ λ ₯ν κΈμλ‘ μΌλΏ λμ°κΈ°
function q1() {
if ($('#input-q1').val() == '') {
alert('μ
λ ₯νμΈμ!')
}
else {
alert($('#input-q1').val())
}
}
-- λ²νΌμ λλ μ λ '@' μ '.' μ μλ΅ν λλ©μΈλ§ λμ°κΈ°
function q2() {
if ($('#input-q2').val().includes('@')){
let email = $('#input-q2').val().split('@')
alert(email[1].split('.', 1))
}
else {
alert('μ΄λ©μΌμ΄ μλλλ€!')
}
}
-- μ΄λ¦μ μ λ ₯νλ©΄ μλ μΆκ°νκΈ°
function q3() {
let name_text = $('#input-q3').val()
let temp_html = `<li>${name_text}</li>`
if ($('#input-q3').val() == ''){
alert('μ΄λ¦μ μ
λ ₯νμΈμ!')
}
else {
$('#names-q3').append(temp_html)
}
}
-- μ λ ₯ν λ΄μ© μ§μ°κΈ°
function q3_remove() {
$('#names-q3').empty()
}
JSON : JavaScript Object Notation
λ°μ΄ν°λ₯Ό μ μ₯νκ±°λ μ μ‘ν λ λ§μ΄ μ¬μ©λλ κ²½λμ DATA κ΅ν νμ
-- javascriptμμ κ°μ²΄λ₯Ό λ§λ€ λ μ¬μ©νλ ννμμ μλ―Έ
-- JSON ννμμ μ¬λκ³Ό κΈ°κ³ λͺ¨λ μ΄ν΄νκΈ° μ¬μ°λ©° μ©λμ΄ μμμ, μ΅κ·Όμλ JSONμ΄ XMLμ λ체ν΄μ λ°μ΄ν° μ μ‘ λ±μ λ§μ΄ μ¬μ©
-- JSONμ λ°μ΄ν° ν¬λ§·μΌ λΏμ΄λ©° μ΄λ ν ν΅μ λ°©λ²λ, νλ‘κ·Έλλ° λ¬Έλ²λ μλ λ¨μν λ°μ΄ν°λ₯Ό νμνλ νν λ°©λ²
μΆμ²: https://usefultoknow.tistory.com/15 [UsefulToKnow]
JSON μ νΉμ§
-- μλ²μ ν΄λΌμ΄μΈνΈ κ°μ κ΅λ₯μμ μΌλ°μ μΌλ‘ λ§μ΄ μ¬μ©
-- μλ°μ€ν¬λ¦½νΈ κ°μ²΄ νκΈ°λ²κ³Ό μμ£Ό μ μ¬
-- μλ°μ€ν¬λ¦½νΈλ₯Ό μ΄μ©νμ¬ JSON νμμ λ¬Έμλ₯Ό μ½κ² μλ°μ€ν¬λ¦½νΈ κ°μ±λ‘ λ³νν μ μλ μ΄μ
-- JSON λ¬Έμ νμμ μλ°μ€ν¬λ¦½νΈ κ°μ²΄μ νμμ κΈ°λ°
-- μλ°μ€ν¬λ¦½νΈμ λ¬Έλ²κ³Ό κ΅μ₯ν μ μ¬νμ§λ§ ν μ€νΈ νμ
-- λ€λ₯Έ νλ‘κ·Έλλ° μΈμ΄λ₯Ό μ΄μ©ν΄μλ μ½κ² λ§λ€ μ μμ
-- νΉμ μΈμ΄μ μ’ μλμ§ μμΌλ©°, λλΆλΆμ νλ‘κ·Έλλ° μΈμ΄μμ JSON ν¬λ§·μ λ°μ΄ν°λ₯Ό νΈλ€λ§ ν μ μλ λΌμ΄λΈλ¬λ¦¬λ₯Ό μ 곡
μΆμ²: https://usefultoknow.tistory.com/15 [UsefulToKnow]
JSON μ λ¬Έλ²
μΆμ²: https://usefultoknow.tistory.com/15 [UsefulToKnow]
GET / POST μμ² μ΄ν΄νκΈ°
ν΄λΌμ΄μΈνΈκ° μμ²νλ νμ
- GET : ν΅μμ μΌλ‘ λ°μ΄ν° μ‘°ν(Read)λ₯Ό μμ²ν λ
-- μ) μν λͺ©λ‘ μ‘°ν
- POST : ν΅μμ μΌλ‘ λ°μ΄ν° μμ±(Create), λ³κ²½(Update), μμ (Delete) μμ²ν λ
-- μ) νμκ°μ , νμνν΄, λΉλ°λ²νΈ μμ
Ajax μ°μ΅νκΈ°
function q1() {
$('#names-q1').empty(); // κ΅¬λ¬Έμ΄ λ§€λ² λμκ° λ λ΄μ©μ μ§μμ€λ€.
$.ajax({
type: "GET", // λΆλ¬μ€κΈ° λλ₯Ό?
// url λ°μ΄ν° μ 보λ₯Ό!
url: "<http://spartacodingclub.shop/sparta_api/seoulair>http://spartacodingclub.shop/sparta_api/seoulair>",
data: {},
success: function (response) {
let rows = response["RealtimeCityAir"]["row"]; // λ°μ΄ν° μ 보μ λ³μλ₯Ό μ§μ ν΄μ€λ€.
for (let i = 0; i < rows.length; i++) {
let gu_name = rows[i]['MSRSTE_NM'];
let gu_mise = rows[i]['IDEX_MVL'];
let temp_html = '' // μΆκ°ν λ°μ΄ν°λ₯Ό html λ‘ κ΅¬ννκΈ° μν΄ λ³μ μ§μ
if (gu_mise > 70) { // 쑰건μ κ±Έμ΄ ν΄λΉνλ κ°λ§ ν¨κ³Όλ₯Ό μ μ©μν¨λ€.
temp_html = `<li class="bad">${gu_name} : ${gu_mise}</li>` // bad ν΄λμ€μ ν°νΈ μκΉ λΉ¨κ°μ μ μ©
} else {
temp_html = `<li>${gu_name} : ${gu_mise}</li>`
}
$('#names-q1').append(temp_html); // html λ‘ μΆκ°
}
}
})
}
Ajax νμ©
let url = response['url'] // κ°μ Έμ¬ μ§μ κ° μ΄λ¦, λ³μ μ§μ
let msg = response['msg']
$('#img-rtan').attr('src',url) // μ΄λ―Έμ§ λ°κΎΈκΈ°
$('#text-rtan').text(msg) // ν
μ€νΈ λ°κΎΈκΈ°
μ΄λ―Έμ§ λ°κΎΈκΈ° : $("#μμ΄λκ°").attr("src", μ΄λ―Έμ§URL);
ν μ€νΈ λ°κΎΈκΈ° : $("#μμ΄λκ°").text("λ°κΎΈκ³ μΆμ ν μ€νΈ");
'π¦ λ΄μΌλ°°μμΊ ν > TIL(Today I Learned)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
TIL_220422_λ―Έλ ν νλ‘μ νΈ (0) | 2023.01.01 |
---|---|
TIL_220421_λ―Έλ ν νλ‘μ νΈ (1) | 2023.01.01 |
TIL_220420_ λ―Έλ ν νλ‘μ νΈ (1) | 2023.01.01 |
TIL_220419_2 (0) | 2023.01.01 |
TIL_220418 (1) | 2023.01.01 |
λΉμ μ΄ μ’μν λ§ν μ½ν μΈ
μμ€ν κ³΅κ° κ°μ¬ν©λλ€