2012-12-04 3 views
1

양식의 데이터베이스에서 가져온 회사의 이름을 보여주는 자동 완성 목록을 만들려고했습니다. 양식을 통해 데이터를 전달할 수있는 유일한 방법은 색인 번호를 표시하는 것뿐입니다. 번호를 숨기고 회사 이름 만 표시하려면 어떻게합니까?자동 완성 목록에서 ID 값 숨기기

나는 매우 사과하기 때문에 미리 사과드립니다.

HTML 입력,

<td width="20%"><h2>Supplied By</h2></td> 
<td width="30%"> 
<input type="text" class="autosuggest" name="supplierID" id="supplierID"> 
<div class="dropdown"> 
<ul class="result" value="supplierID"></ul> 
</div> 
script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
<script src="js/primary.js"></script> 
</td> 

JS/primary.js

$(document).ready(function() { 
    $('.autosuggest').keyup(function(){ 
     var search_term = $(this).attr('value'); 
     $.post('../ajax/position.php', {search_term:search_term},  function(data) { 
      $('.result').html(data); 
      $('.result li').click(function() { 
       var result_value = $(this).text(); 
       $('.autosuggest').attr('value', result_value); 
       $('.result').html(''); 
      }); 
     }); 
    }); 
}); 

../ajax/position.php

<?php 
    require_once '../scripts/connect_to_mysql.php'; 
if (isset($_POST['search_term']) == true && empty($_POST['search_term']) == false) 
{ 
    $search_term = mysql_real_escape_string ($_POST['search_term']); 
    $query = mysql_query("SELECT `Company` , `CompanyID` FROM `company` 
    WHERE `Company` 
    LIKE '$search_term%'"); 
    while (($row = mysql_fetch_assoc($query)) !==false) 
    { 
     echo '<li>',$row['CompanyID'].$row['Company'],'</li>'; 
    } 
} 
    ?> 
+0

안녕 G-너겟 당신이 뭔가를 편집하여 무엇을 의미 하는가 서버에 전달할 때 '리'ID를 사용? –

+0

G-Nugget이 귀하의 게시물을 편집하고 귀하를 대신하여 몇 가지 사항을 변경했습니다. 그가 무엇을했는지보기 위해 그의 이름 위에 '시간 전'을 클릭하십시오. – Fresheyeball

+0

고마워요 고마워요 –

답변

2

예를 들어이 회사 ID를 'li'의 ID로 지정해야합니다.

<?php 
    require_once '../scripts/connect_to_mysql.php'; 
if (isset($_POST['search_term']) == true && empty($_POST['search_term']) == false) 
{ 
    $search_term = mysql_real_escape_string ($_POST['search_term']); 
    $query = mysql_query("SELECT `Company` , `CompanyID` FROM `company` 
    WHERE `Company` 
    LIKE '$search_term%'"); 
    while (($row = mysql_fetch_assoc($query)) !==false) 
    { 
     echo '<li id='$row["CompanyID"]'>'.$row['Company'].'</li>'; 
    } 
} 
    ?> 

하고

+0

안녕하세요 muthu, 답장을 보내 주셔서 감사합니다. 제공 한 코드를 교체하면 목록에 아무 것도 표시되지 않습니다. –

+0

안녕하세요, echo '

  • muthu

  • +0

    좋습니다. 따라서 while 루프에서 코드를 바꾸 었으며 제안 된대로 색인 번호가 사라졌습니다. 문제는 양식으로 전달되지 않는 것입니다. 에코로 변경했을 때 '

  • '; 그리고 ID 번호를 타이핑하기 시작하면 목록에 나타났습니다. 게시를 시도했을 때 분명히 원하는 것 외에는 작동하지 않았습니다. –

  • 관련 문제