Language/JavaScript (WEB)

๐ŸŒ ์ด๋ฒคํŠธ ๊ธฐ๋ณธ ๋™์ž‘ ์ทจ์†Œ ํ•˜๋Š” 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•

์ธํŒŒ_ 2021. 9. 18. 19:20

๊ธฐ๋ณธ๋™์ž‘์ทจ์†Œ

์ด๋ฒคํŠธ ๊ธฐ๋ณธ ๋™์ž‘ ์ทจ์†Œํ•˜๊ธฐ

์›น๋ธŒ๋ผ์šฐ์ €์˜ ๊ตฌ์„ฑ์š”์†Œ๋“ค์€ ๊ฐ๊ฐ ๊ธฐ๋ณธ์ ์ธ ๋™์ž‘ ๋ฐฉ๋ฒ•์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

  • ํ…์ŠคํŠธ ํ•„๋“œ์— ํฌ์ปค์Šค๋ฅผ ์ค€ ์ƒํƒœ์—์„œ ํ‚ค๋ณด๋“œ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ํ…์ŠคํŠธ๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค.
  • ํผ์—์„œ submit ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ์ „์†ก๋œ๋‹ค.
  • a ํƒœ๊ทธ๋ฅผ ํด๋ฆญํ•˜๋ฉด href ์†์„ฑ์˜ URL๋กœ ์ด๋™ํ•œ๋‹ค.
  • ๊ทธ๋ฐ–์˜ ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ณธ ๋‹จ์ถ•ํ‚ค (๋ณต์‚ฌ ๊ธฐ๋Šฅ์ด๋‚˜, f12, ์—”ํ„ฐ ๊ฐ™์ด, ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ๊ธฐ๋Šฅ)

์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ์ ์ธ ๋™์ž‘๋“ค์„ ๊ธฐ๋ณธ ์ด๋ฒคํŠธ๋ผ๊ณ  ํ•˜๋Š”๋ฐ, ์‚ฌ์šฉ์ž๊ฐ€ ๋งŒ๋“  ์ด๋ฒคํŠธ๋ฅผ ์ด์šฉํ•ด์„œ ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ๋™์ž‘์„ ์ทจ์†Œํ•˜๊ฑฐ๋‚˜ ์กฐ์ž‘ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์Œ 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•ด๋ณธ๋‹ค.


inline ๋ฐฉ์‹

onclick ์˜ ์†์„ฑ๊ฐ’์— ์ด๋ฒคํŠธ์˜ ๋ฆฌํ„ด๊ฐ’์ด false์ด๋ฉด ๊ธฐ๋ณธ ๋™์ž‘์ด ์ทจ์†Œ๋œ๋‹ค.

<p>
    <label>prevent event on</label>
    <input id="prevent" type="checkbox" name="eventprevent" value="on" />
</p>
<p>
    <a href="http://opentutorials.org" onclick="if(document.getElementById('prevent').checked) return false;">opentutorials</a>
</p>
<p>
    <form action="http://opentutorials.org" onsubmit="if(document.getElementById('prevent').checked) return false;">
            <input type="submit" />
    </form>
</p>

property ๋ฐฉ์‹

ํ•จ์ˆ˜์˜ ๋ฆฌํ„ด ๊ฐ’์ด false์ด๋ฉด ๊ธฐ๋ณธ ๋™์ž‘์ด ์ทจ์†Œ๋œ๋‹ค.

<p>
    <label>prevent event on</label>
    <input id="prevent" type="checkbox" name="eventprevent" value="on" />
</p>
<p>
    <a href="http://opentutorials.org">opentutorials</a>
</p>
<p>
    <form action="http://opentutorials.org">
            <input type="submit" />
    </form>
</p>
document.querySelector('a').onclick = function(event){
    if(document.getElementById('prevent').checked)
        return false;
};

document.querySelector('form').onclick = function(event){
    if(document.getElementById('prevent').checked)
        return false;
};

addEventListener ๋ฐฉ์‹

์ด ๋ฐฉ์‹์—์„œ๋Š” ์ด๋ฒคํŠธ ๊ฐ์ฒด์˜ e.preventDefault() ๋ฉ”์†Œ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๊ธฐ๋ณธ ๋™์ž‘์ด ์ทจ์†Œ๋œ๋‹ค.

<p>
    <label>prevent event on</label>
    <input id="prevent" type="checkbox" name="eventprevent" value="on" />
</p>
<p>
    <a href="http://opentutorials.org">opentutorials</a>
</p>
<p>
    <form action="http://opentutorials.org">
        <input type="submit" />
    </form>
</p>
document.querySelector('a').addEventListener('click', function(e){
    if(document.getElementById('prevent').checked) 
        e.preventDefault(); // ๋งํฌ ๋™์ž‘ ๊ธˆ์ง€
});

document.querySelector('form').addEventListener('submit', function(e){
    if(document.getElementById('prevent').checked) 
        e.preventDefault(); // ํผ submit(ํŽ˜์ด์ง€๊ฐฑ์‹ ) ๋™์ž‘ ๊ธˆ์ง€
});