My Name is Kay....

DIY , 먹방 , 개발 , 육아 , 여행 좋아합니다.
AdBlock 사용시 화면이 정상적으로 노출되지 않습니다.
포스팅 관련 문의 및 개발 문의는 Email : wkzkfmxksi@gmail.com

추가 포스팅이 이뤄지지 않는 블로그입니다. 문의는 wkzkfmxksi@gmail.com 으로 연락주세요.
UI
2013.03.08 23:29

AutoCompleate - ( XML + Jquery )

kay
조회 수 5540 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

jQuery + XML 연동 Autocomplete 예제

test Url : http://www.uhoon.co.kr/test/409.html 

 

auto.png

 

*auto.html

<head>
<meta charset="utf-8" />
<title>jQuery Autocomplete</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.1/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script>  
</head>
<body>

<script>
$(document).ready(function() { 
var lang = "en"; 
$("#lang").bind("change", function() {
lang = this.value;
});

    $.ajax({
        url: "data.xml",
        dataType: "xml",
        success: function( xmlResponse ) {
            var data = $("dong", xmlResponse ).map(function() {
                return {
                    value: "",
                    name_en: $( "name_en", this ).text(),
                    name_kr: $("name_kr", this).text(), 
                    web: $( "web", this ).text()
                };
            }).get(); 
            $("#results").autocomplete({
                source: function(req, add) {
                 var source = [];
                 for (var i = 0; i < data.length; i++)
                 {           
                    if (lang == "en")
                    {
                        data[i].value = data[i].name_en;   
                    }
                    else if (lang == "kr")
                    {
                        data[i].value = data[i].name_kr;  
                    } 
                    if (data[i].value.toLowerCase().indexOf($("#results").val().toLowerCase()) >= 0)
                    {
                         source.push(data[i]);   
                     }
                 } 
                 add(source);
                },
                minLength: 0,
                select: function( event, ui ) {
                        $('#translate').html('');
                        $('#web').html('');
                        if (lang == "en")
                        {
                            dongName = ui.item.name_kr;   
                        }
                        else if (lang == "kr")
                        {
                            dongName = ui.item.name_en;  
                        } 
                        $('#translate').html(dongName).slideDown();
                        $('#web').html(ui.item.web).slideDown();

                }
            });
        },error: function(xhr, ajaxOptions, thrownError){ alert(thrownError);  alert(xhr.responseText); }
    }); 
}); 
</script>
<div class="ui-widget"> 
<p>
<select id="lang">
<option value="en">EN</option>
<option value="kr">KR</option>
</select>
<input type="text" id="results" style="width:500px;"/>
</p>
<p>
<label for="translate">translate : </label>
<span id="translate"></span>
</p>
<p>
<label for="web">web : </label>
<span id="web"></span>
</p>
</div> 
</body>
</html>



*data.xml


<?xml version="1.0" encoding="UTF-8"?>
<list>
<dong>
    <name_en>Mugyo-dong, Jung-gu, Seoul, Korea</name_en>
    <name_kr>서울특별시 중구 무교동</name_kr> 
    <web>http://www.무교동.com</web>
</dong>
<dong>
    <name_en>Gunja-dong, Gwangjin-gu, Seoul, Korea</name_en>
    <name_kr>서울특별시 광진구 군자동</name_kr> 
    <web>http://www.군자동.com</web>
</dong>
<dong>
    <name_en>Guui 1-dong, Gwangjin-gu, Seoul, Korea</name_en>
    <name_kr>서울특별시 광진구 구의1동</name_kr> 
    <web>http://www.구의1동.com</web>
</dong>
<dong>
    <name_en>Guui 2-dong, Gwangjin-gu, Seoul, Korea</name_en>
    <name_kr>서울특별시 광진구 구의2동</name_kr> 
    <web>http://www.구의2동.com</web>
</dong>
</list>





?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
15 UI Jquery 갤러리 "jQuery-awesome-images-Gallery-lightbox" file kay 2013.07.30 4260
14 UI 특정 객체가 화면에 보이는지 여부 확인 kay 2015.12.14 4894
13 UI .on kay 2013.04.03 4919
12 UI 객체 초기화 kay 2013.04.04 4958
11 UI Menu Bar kay 2013.02.06 5176
» UI AutoCompleate - ( XML + Jquery ) kay 2013.03.08 5540
9 UI AutoCompleate - ( JSON + Jquery ) kay 2013.04.02 5905
8 UI Jquery Slider Bar / 슬라이더 바 3종 샘플 file kay 2014.07.28 6713
7 UI Select Box Option 동적 추가 , 삭제 , 복사 kay 2015.09.18 7082
6 UI select Box option ( 초기화,추가,삭제 ) kay 2013.04.03 9533
5 UI 동적으로 추가된 객체에 datepicker() 적용하기 kay 2013.11.06 10141
4 UI 스크롤 탑 컨트롤 - scrolltop control kay 2013.05.29 18965
3 UI animate - 각종 애니메이션 효과 kay 2013.04.11 26330
2 UI SelectBox Option 값 초기화 및 수정 삭제 kay 2013.03.02 36666
1 UI woothemes FlexSlider - 슬라이더 file kay 2014.09.16 286850
Board Pagination Prev 1 Next
/ 1