データベースからフォームに抽出された企業名を表示するオートコンプリート リストを作成しようとしました。フォームを介してデータを渡すことができる唯一の方法は、インデックス番号も表示することであることを除いて、すべてうまく機能します。番号を非表示にして会社名のみを表示するにはどうすればよいですか。
私はこれに非常に慣れていないので、事前にお詫び申し上げます。
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>';
}
}
?>