옵션 선택에 따른 이미지 변경 소스가 작동을 하지 않아요 채택완료
블랑숑
7년 전
조회 2,130
옵션을 선택하고 그 선택한 value 값이 링크값이 되어 특정 ID의 이미지가 변경하는
없는 지식에 소스를 여러 곳에서 짜집기를 해서 만들었는데요
li 등으로 테스트하면 잘 나오는데 select option으로 하면 작동이 되지 않네요
option의 value값은 적용이 잘 되는 것으로 확인이 됩니다.
</p>
<p><BODY onLoad="initf(document.f)">
<img id="disp_img" src="<a href="https://sir.kr/img/main/logo2.png"" target="_blank" rel="noopener noreferrer">https://sir.kr/img/main/logo2.png"</a> alt="">
<form name='f'>
<select name="select_1" onchange="change_select_1(this.form)"></select>
<select name="select_2" onchange="change_select_2(this.form)"></select>
<select name="select_3"></select>
</form></p>
<p><script>
function Category(text, value) {
this.text = text;
this.value = value;
this.length = 0;
}
function addCategory(category, text, value) {
category[category.length] = new Category(text, value);
category.length++;
}
var category = new Category();
// 수정 하실 부분.
// 구현 방법 addCategory (뎁스,네임,값)
// <option value="값">네임</option>
addCategory(category, "1");
addCategory(category, "2");
addCategory(category, "3");
addCategory(category[0], "1-1");
addCategory(category[0], "1-2");
addCategory(category[1], "2-1");
addCategory(category[2], "3-1");
addCategory(category[0][0], "1-1-1","<a href="https://sir.kr/img/bn/request-link2.gif");" target="_blank" rel="noopener noreferrer">https://sir.kr/img/bn/request-link2.gif");</a>
addCategory(category[0][0], "1-1-2");
addCategory(category[0][1], "1-2-1");
addCategory(category[0][1], "1-2-2");
addCategory(category[1][0], "2-2");
addCategory(category[2][0], "3-2");
function initf(f) {
f.select_1.length = category.length+1;
f.select_1[0].text = "-선택해주세요-";
for (i = 1; i < f.select_1.length; i++){
f.select_1[i].text = category[i-1].text;
if(category[i-1].value)
f.select_1[i].value = category[i-1].value;
}
f.select_1.selectedIndex = 0;
change_select_1(f);
}
function change_select_1(f) {
var i = f.select_1.selectedIndex;
f.select_2.length = (i ? category[i-1].length : 0)+1;
f.select_2[0].text = "-선택해주세요-";
for (j = 1; j < f.select_2.length; j++){
f.select_2[j].text = category[i-1][j-1].text;
if(category[i-1][j-1].value)
f.select_2[j].value = category[i-1][j-1].value;
}
f.select_2.selectedIndex = 0;
change_select_2(f);
}
function change_select_2(f) {
var i = f.select_1.selectedIndex;
var j = f.select_2.selectedIndex;
f.select_3.length = (i && j ? category[i-1][j-1].length : 0)+1;
f.select_3[0].text = "-선택해주세요-";
for (k = 1; k < f.select_3.length; k++){
f.select_3[k].text = category[i-1][j-1][k-1].text;
if(category[i-1][j-1][k-1].value)
f.select_3[k].value = category[i-1][j-1][k-1].value;
<span style="background-color:#f1c40f"> f.select_3[k].className = 'imglink';</span>
}
f.select_3.selectedIndex = 0;
}</p>
<p>$(document).ready(function(){
$(".imglink").click(function() {
<span style="background-color:#f1c40f"> var image_url = $(this).attr("value");</span>
<span style="background-color:#f1c40f"> $('#disp_img').attr('src', image_url);</span>
});
});</p>
<p></script>
</BODY>
</HTML></p>
<p>
이런 소스인데요
어떤 분께서
f.select_3[k].className = 'imglink'
-> f.select_3.className = 'imglink';
$(".imglink").click(function() {
-> $("select[name=select_3]").bind("change", function () {
var image_url = $(this).attr("value");
-> var image_url = $("select[name=select_3] option:selected").val();
로 변경해보라고 해서 변경을 해봤으나 역시 적용이 안되네요 ㅠㅠ
혹시 어떤 부분을 변경해야 정상적으로 작동을 할까요?
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
답변에 대한 댓글 5개
�
블랑숑
7년 전
으앗 이렇게 깔끔하게 되네요 완전 감사합니다 ㅠㅠ 로또 1등 되세요 너무 감사합니다
�
블랑숑
7년 전
body 부분도 해결해주셨네요 onload 없이도 ㅠㅠ 완전 감사합니다
�
블랑숑
7년 전
와 이거 제가 말은 안했지만 원하던 부분까지 모두모두 알려주셨어요 너무 감사해요
이미지 url이 있을 때 없을때까지 ;; 와 ㅠㅠ
의뢰는 아니지만 제가 뭐라도 보답하고 싶어서요 혹시 쪽지로 전화번호 주실 수 있으신가요?
더운 날 커피라도 드시게 커피 기프티콘이라도 보내드리고 싶네요 ㅠㅠ
이미지 url이 있을 때 없을때까지 ;; 와 ㅠㅠ
의뢰는 아니지만 제가 뭐라도 보답하고 싶어서요 혹시 쪽지로 전화번호 주실 수 있으신가요?
더운 날 커피라도 드시게 커피 기프티콘이라도 보내드리고 싶네요 ㅠㅠ
�
로토루아
7년 전
도움이 되셨다니 저도 기쁘네요...
무더위에 건강조심하세요,,,
무더위에 건강조심하세요,,,
�
블랑숑
7년 전
아 기프티콘은 좀 그런가요? ㅠㅠ
건강 조심하시고 하시는 일 대박 나세요~! 감사합니다
건강 조심하시고 하시는 일 대박 나세요~! 감사합니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인