테스트 사이트 - 개발 중인 베타 버전입니다

autocomplete 질문입니다. 채택완료

kujira 7년 전 조회 2,836

안녕하세요. jquery 자동완성 기능을 작업하는 도중에 막히는 부분이 있어 질문 올립니다.

그누보드는 아니고요 홈페이지요리사라고 하는 솔루션에서 작업중인데요 일단 적용 페이지는

http://www.daminn.net/kwa-47410

여기입니다. 여기서 명칭에 아파트라고 입력하면 로딩이 나오고 값이 불러와 지는것 같은데 

덱스트가 안나오고 줄이 죽죽 그어져 있네요;;;

 

일단 소스는 이렇습니다.

 

스크립트 부분

</p>

<p><script>

$( function() {        

        $("#etc_4").autocomplete({

                source: function( request, response ){                   

                 $.ajax({

                    type: 'post',

                    url: "<a href="http://www.daminn.net/works/autocomplete_json.php"," target="_blank" rel="noopener noreferrer">http://www.daminn.net/works/autocomplete_json.php",</a>

                    dataType: "json",

                    data: {term : request.term},

                  

                    success : function(data){

                      

                      response(

                        $.map(data, function(item) {

                        return { label: item.subject }

                        })

                      )

                    }

                });

                },

                 minLength: 2, 

                select: function( event, ui ) {

                    // 만약 검색리스트에서 선택하였을때 선택한 데이터에 의한 이벤트발생

                }

        });

    });

</script></p>

<p>
 

autocomplete_json.php

</p>

<p><?php

//echo "<script>alert('aaa');</script>";

$root = "../";

include "{$root}db.inc.php";

include "{$root}config.inc.php";</p>

<p>

$etc_4 = $_GET['etc_4'];</p>

<p>$sql = "select * from TCBOARD_BD47437 where subject like '%".$etc_4."%' group by subject order by subject asc ";

$result = mysql_query($sql);</p>

<p>while($row=mysql_fetch_assoc($result)) {

    $arr[] = $row['subject'];

}</p>

<p>echo json_encode($arr);

?></p>

<p>

 

html부분

</p>

<p><li><label for="etc_4">명칭</label><div><input type="text" name="etc_4" value="" class="AB-text" style="min-width:320px;" id="etc_4" /></div></li></p>

<p>

여기까지 소스이며 현재 실행결과는

 

 

이런식으로 뭔가가 나오긴 하는데 안나오는 상태입니다..;;;;;

 

해결책좀 부탁드립니다;;;;;;;;;

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
7년 전

서버에서 데이터를 만들 때 필드명 없이 배열로만 생성하고 있습니다.

 

return { label: item.subject } --> return { label: item }

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

k
kujira
7년 전
감사합니다!!! 그런데 위 방법대로 하니까 내용이 나오긴 하는데 db에 subject가 불광이 like되는 데이터는 하나만 나와야 하는데 그렇지 않은 데이터까지 모두 나오고 있습니다. autocomplete_json.php의 쿼리만 찍어보면 '%불광%'의 데이터는 하나만 찍힙니다. 왜그런걸까요? $_GET['etc_4']가 안넘어와서 모든 데이터를 select하는것 같은데 POST로 바꿔봐도 마찬가지입니다....ㅠㅠ
k
kujira
7년 전
덕분에 잘 해결되었습니다. 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인