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 woothemes FlexSlider - 슬라이더 file kay 2014.09.16 286611
14 UI SelectBox Option 값 초기화 및 수정 삭제 kay 2013.03.02 36660
13 UI animate - 각종 애니메이션 효과 kay 2013.04.11 26329
12 UI 스크롤 탑 컨트롤 - scrolltop control kay 2013.05.29 18965
11 UI 동적으로 추가된 객체에 datepicker() 적용하기 kay 2013.11.06 10135
10 UI select Box option ( 초기화,추가,삭제 ) kay 2013.04.03 9532
9 UI Select Box Option 동적 추가 , 삭제 , 복사 kay 2015.09.18 7081
8 UI Jquery Slider Bar / 슬라이더 바 3종 샘플 file kay 2014.07.28 6713
7 UI AutoCompleate - ( JSON + Jquery ) kay 2013.04.02 5905
» UI AutoCompleate - ( XML + Jquery ) kay 2013.03.08 5540
5 UI Menu Bar kay 2013.02.06 5150
4 UI 객체 초기화 kay 2013.04.04 4958
3 UI .on kay 2013.04.03 4919
2 UI 특정 객체가 화면에 보이는지 여부 확인 kay 2015.12.14 4886
1 UI Jquery 갤러리 "jQuery-awesome-images-Gallery-lightbox" file kay 2013.07.30 4260
Board Pagination Prev 1 Next
/ 1