๐ ์์ ๋ค์ด๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ ๋ฐ ์์ ์ฑ ๊ฐ์
1. ๋ฌธ์ ์ํฉ
๊ธฐ์กด ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ์์ ๊ฒ์ ์กฐ๊ฑด ๊ธฐ๋ฐ ์์
๋ค์ด๋ก๋ ๊ธฐ๋ฅ์ด ํ์ํ๋ค.
๋จ์ ๋ค์ด๋ก๋๊ฐ ์๋๋ผ ๋ค์ ์กฐ๊ฑด์ ๋ง์กฑํด์ผ ํ๋ค:
- ์ฌ์ฉ์ ๊ฒ์ ์กฐ๊ฑด ์ ์ง
- ํ์ด์ง ๋ฌด์ (์ ์ฒด ๋ฐ์ดํฐ ๋ค์ด๋ก๋)
- ์ถ๊ฐ ํํฐ (์ง์ญ, ์ ๋ ฌ, ๋ชฉ์ ๋ฑ) ๋ฐ์
- ์ด๊ธฐ ๊ฒ์ ํค(initialKey) ๋์
2. ๊ตฌํ ๋ฐฉ์
โ๏ธ Form ๊ธฐ๋ฐ POST ์์ฒญ์ผ๋ก ์์ ๋ค์ด๋ก๋ ์ฒ๋ฆฌ
form.action = "/welfare/listWelExcavateExcel.do";
form.method = "post";
form.submit();
- GET ๋ฐฉ์์ด ์๋ POST ๋ฐฉ์์ ์ฌ์ฉํ์ฌ
- ํ๋ผ๋ฏธํฐ ๊ธธ์ด ์ ํ ํํผ
- ๋ณต์กํ ๊ฒ์ ์กฐ๊ฑด ์ ๋ฌ ๊ฐ๋ฅ
โ๏ธ ๊ฒ์ ์กฐ๊ฑด ๋์ ์ธํ
form.searchKeyword.value = keyword;
form.search_condition.value = searchCondition;
form.sido_cd_id.value = sido_cd_id;
form.sidogun_cd_id.value = sidogun_cd_id;
- ํ๋ฉด์์ ์ ๋ ฅ๋ ๊ฐ์ hidden form์ ์ฃผ์
- ์๋ฒ์์๋ ๋์ผํ ๋ก์ง์ผ๋ก ์กฐํ → ์์ ๋ฐ์ดํฐ ์ผ๊ด์ฑ ํ๋ณด
โ๏ธ ์ ์ฒด ๋ฐ์ดํฐ ์กฐํ ์ฒ๋ฆฌ (ํ์ด์ง ์ ๊ฑฐ)
form.limit.value = 99999;
form.isPaging.value = "N";
- ์์ ๋ค์ด๋ก๋ ์ ํ์ด์ง ์ ๊ฑฐ
- ์๋ฒ์์ ์ ์ฒด ๋ฐ์ดํฐ ์กฐํํ๋๋ก ์ ์ด
โ๏ธ ์ด๊ธฐ ๊ฒ์ ํค ์ฒ๋ฆฌ ๋ก์ง
if (initialKey !== "") {
searchCondition = "initial";
keyword = initialKey;
}
- ํน์ ์กฐ๊ฑด(initialKey)์ด ์กด์ฌํ๋ฉด
- ๊ธฐ์กด ๊ฒ์ ์กฐ๊ฑด์ override
- ์ฌ์ฉ์ ์ง์ ๊ฒฝ๋ก์ ๋ฐ๋ฅธ ๊ฒ์ ๋ถ๊ธฐ ์ฒ๋ฆฌ
3. ํธ๋ฌ๋ธ์ํ ๋ฐ ๊ฐ์ ํฌ์ธํธ
โ ๏ธ 1. form ํ๋ ๋๋ฝ ์ JS ์๋ฌ ๋ฐ์
form.searchKeyword.value = keyword; // ํ๋ ์์ผ๋ฉด ์๋ฌ
โ ๊ฐ์
form.searchKeyword?.value = keyword;
- optional chaining์ผ๋ก ๋ฐํ์ ์๋ฌ ๋ฐฉ์ง
โ ๏ธ 2. jQuery ์์กด์ฑ ๋ฌธ์
$('#searchFrm').attr(...).submit();
- jQuery ๋ฏธ๋ก๋ฉ ์ ๊ธฐ๋ฅ ๋์ ๋ถ๊ฐ
โ ๊ฐ์
form.action = "...";
form.method = "post";
form.submit();
- Vanilla JS๋ก ๋ณ๊ฒฝํ์ฌ ์์กด์ฑ ์ ๊ฑฐ
โ ๏ธ 3. ๋์ฉ๋ ์กฐํ ์ฑ๋ฅ ์ด์ ๊ฐ๋ฅ์ฑ
- limit = 99999 ๋ฐฉ์์ ๋จ์ํ์ง๋ง ์ํ
โ ๊ณ ๋ ค ์ฌํญ
- ๋ฐ์ดํฐ ์ฆ๊ฐ ์:
- ์๋ฒ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ์ฆ๊ฐ
- ์๋ต ์ง์ฐ ๊ฐ๋ฅ์ฑ
๐ก ๊ฐ์ ๋ฐฉํฅ
- ์คํธ๋ฆฌ๋ฐ ๋ค์ด๋ก๋
- ๋ฐฐ์น ์ฒ๋ฆฌ ๊ธฐ๋ฐ ์์ ์์ฑ
โ ๏ธ 4. ๊ฒ์ ์กฐ๊ฑด overwrite ์ด์
- initialKey ์กด์ฌ ์ ๊ธฐ์กด ๊ฒ์ ์กฐ๊ฑด ๋ฌด์๋จ
๐ก ๊ฐ์ ๋ฐฉํฅ
- ์ฌ์ฉ์ ์๋์ ๋ฐ๋ผ:
- ๋ณํฉ OR ์ฐ์ ์์ ์ ์ฑ ๋ช ํํ ํ์
4. ํต์ฌ ์ฑ๊ณผ
- ๊ฒ์ ์กฐ๊ฑด์ ์ ์งํ ์์ ๋ค์ด๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ
- POST ๊ธฐ๋ฐ ์์ฒญ์ผ๋ก ๋ณต์กํ ํ๋ผ๋ฏธํฐ ์์ ์ ์ฒ๋ฆฌ
- ํ์ด์ง ์ ๊ฑฐ๋ฅผ ํตํ ์ ์ฒด ๋ฐ์ดํฐ ๋ค์ด๋ก๋ ์ฒ๋ฆฌ
- optional chaining ์ ์ฉ์ผ๋ก ๋ฐํ์ ์์ ์ฑ ๊ฐ์
- jQuery ์ ๊ฑฐ๋ก ์์กด์ฑ ์ต์ํ ๋ฐ ์ ์ง๋ณด์์ฑ ํฅ์
- ๋์ฉ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์ ๋ฐ์ ๊ฐ๋ฅํ ์ฑ๋ฅ ์ด์ ์ฌ์ ๋ถ์ ๋ฐ ๊ฐ์ ๋ฐฉํฅ ๋์ถ
'์ผ > javascript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ๋ชจ๋ฌ ํ์ ๋ด ๋์ ํ ์ด๋ธ UI ์ ๋ ฌ ๋ฌธ์ ํด๊ฒฐ (0) | 2026.03.22 |
|---|---|
| ์์ ๋ค์ด๋ก๋ ๋ฒํผ ํด๋ฆญ ํ ๋ค๋ฅธ ๋ฒํผ ๋์ ์ด์ ๋ฌธ์ ํด๊ฒฐ (0) | 2026.03.21 |
| js14_jQuery_ui (0) | 2023.06.19 |
| js13_effect (0) | 2023.06.01 |
| js12_events (0) | 2023.06.01 |