php
  • jquery
  • 2012-12-19 3 views 0 likes 
    0

    제목을 입력하기 위해 데이터베이스를 쿼리하는 작은 스크립트를 작성하고 제목을 입력하면 추천 단어가 표시됩니다.jquery는 document.ready에서 다른 ID를 얻습니다.

    내가 예를 발견하고 아래 하나를 만들어 관리해야 :

    <head> 
    <title>Match Form/title> 
    <script type="text/javascript" src="jquery.js"></script> 
    <script type='text/javascript' src='jquery.autocomplete.js'></script> 
    <link rel="stylesheet" type="text/css" href="jquery.autocomplete.css" /> 
    <script type="text/javascript"> 
    $(document).ready(function() 
        { 
    
         $("#course").autocomplete("get_title_list.php", { 
    
          width: 260, 
          matchContains: true, 
          mustMatch: true, 
          selectFirst: false 
         }); 
         $("#course").result(function(event, data, formatted) { 
          $("#course_val").val(data[1]); 
         }); 
        }); 
    
    </script> 
    </head> 
    

    다음 작동하고 페이지 내 결과를 출력 할 수 있다는, 내 다음 작업은 여러 제목을 따라 여러 텍스트 박스를 가지고있다 누군가가 데이터베이스를 검색 한 다음 결과를 할당 된 상자에 반환 할 수있게합니다.

    나는 각각의 상자에 ID를 할당해야하며, 그때 내가 고심하고있는 jquery에서 그 ID를 선택할 필요가 있음을 알고있다. 도움이 될 것입니다.

    +0

    '$ ('# ID1, ID2 #, # ID3)'. 실제로 ID 대신 클래스를 제안합니다 :'$ ('. autocomplete')'. –

    +0

    Hazmat에게 감사드립니다. 제발 그것에 대해 자세히 설명해 줄 수있는 기회가 있습니까? 메신저 jquery 어떤 도움을 주셔서 감사합니다! – user1714133

    답변

    0

    ID 대신 텍스트 상자를 클래스로 변경하십시오. 이 같은 것은 "코스"클래스가있는 상자에서 작동해야합니다.

     $(".course").autocomplete("get_title_list.php", { 
         width: 260, 
         matchContains: true, 
         mustMatch: true, 
         selectFirst: false 
        }); 
        $(".course").result(function(event, data, formatted) { 
         $(this).next(".course_val").val(data[1]); 
        }); 
    
    +0

    이제는 문제가 생겼습니다. 스프레드 시트에 데이터를 복사하여 붙여 넣을 수 있어야합니다. 그래야 텍스트 상자에서 제대로 작동하지 않습니다. 결과를 라벨에 출력하려고 시도했는데이 아이디어가 있습니까? – user1714133

    +0

    이렇게하려면'course_val' 텍스트 상자를 모두 레이블로 변경 한 다음'$ (this) .next (". course_val") 대신 val (data [1]);'$ (this) .next (". course_val"). text (data [1]); 대신. – Samsquanch

    0

    ID 대신 클래스를 사용하는 것이 좋습니다. ID는 고유해야하지만 동일한 클래스로 여러 요소를 가질 수 있으므로 한 번에 쉽게 선택할 수 있습니다.

    예 :

    <input id="A" class="auto" /> 
    <input id="B" class="auto" /> 
    
    <script> 
        $('.auto').autocomplete({}); // the '.' is used to select by class 
    </script> 
    
    관련 문제