Jquery 이런건 코드를 어떻게 짜야 할까요? (배열과 select 에 따른 요소(텍스트)변경)
본문
<select class="fruit" name="">
</select>
<div class="result"> </div>
<script>
var arrf = new Array();
arrf[0] = Array("사과","빨강");
arrf[1] = Array("귤","노랑");
arrf[2] = Array("복숭아","분홍");
arrf[3] = Array("멜론","녹색");
console.log(arrf[0][0]);
for (var i = 0; i < arrf.length; i++) {
var oppt = "<option value='3'>" + arrf[i][0] + "</option>";
$('.fruit').append(oppt);
}
$('#select').change(function() {
!!!여기를 어떻게 해야할지 ㅠㅠ!!!!
});
</script>
다중 배열을 만들어서 select 에 적용까지 했는데요!!
jquery 에서 change 요거 사용해가지고
select 값이 바뀔때마다(사과,귤,복숭아....)
.result 값을 동일 배열 내 값으로 변경하고 싶은데요 ㅠ (빨강,노랑,분홍.....)
$('.result').text($(".fruit option:selected").val());
이걸 쓰라고 하는데 .result 값에 동일 배열 내의 변수를 어떻게 담아야 할지 모르겠네요 ㅠㅠ
이건 어떻게 해야할까요?? ㅠ
!-->답변 3
1. 옵션값에 색을 넣으면 되는데 왜캐 복잡하게 하시는지?
2. 구지 옵션값에 색 말고 다른 값이 들어가야 한다면
for문 돌린 i 에 해당 하는 값만 가져오면 됩니다. 옶션에 index 속성 주고 값을 받던지
index()로 값을 받던지 하면 될거 같습니다.
안녕하세요
질문자님 소스에서 아래와 같이 수정해 보세요.
<select class="fruit" name="fruit" id="fruit">
<option value="" fruit_value="">과일</option>
<option value="사과" fruit_value="빨강">사과</option>
<option value="귤" fruit_value="노랑">귤</option>
<option value="복숭아" fruit_value="분홍">복숭아</option>
<option value="멜론" fruit_value="녹색">멜론</option>
</select>
<div class="result"></div>
</select>
<script>
$(function(){
$("select#fruit").change(function(){ //과일을 선택하면
var fruit_val = $(this).find('option:selected').attr('fruit_value'); //색으로 값 가져오기
$('div.result').html(fruit_val); //결과값을 DIV 태그사이에 넣기
console.log(fruit_val); // 디버그 하기 위해서.. 값 찍어보기
}
});
</script>
문법이 틀린부분
$("#select")
이건 id 가 select 인것을 찾는 방법입니다
css에서 부르는방식과 같죠
#을 빼야 합니다
$("select").change(function(){
//이곳에는 실제 선택된 값을 불러야 하니
// 쓰라고 하신 답을 적으면 되겠네요
});