2017-11-19 2 views
0

メインページにオートコンプリート入力と[ADDボタン]があります。 追加ボタンを押すと、ユーザーは新しいレコードを追加するためにリダイレクトされます。 新しいレコードを保存した後、ユーザーはメインページにリダイレクトされます。PHP Jqueryオートコンプリート、

私は、ユーザーがメインページにリダイレクトされている場合、のようだ入力フィールドを持っているが、これを達成するためにどのようにこのaddeddレコードデータ

で埋め?

ここに私のコード:

HTML

<div class="form-group"> 
    <label>Sender <span class="text-danger">*</span></label> 
    <input type="text" id="sender_name" name="sender_name" required="required" class="form-control" placeholder="Type to select" value=""> 
    <input type="hidden" id="sender_id" name="sender_id"> 
</div> 

AJAX

$(function() { 
     $("#sender_name").autocomplete({ 
      source: 'add_document_sender_autocomplete.php', 
      minLength: 1, 

      change: function (event, ui) { 
       if (!ui.item) { 
        $(this).val(""); 
       } 
      }, 

      select: function(event, ui) { 

       $('#sender_id').val(ui.item.id); 

      } 


     }); 
    }); 

QUERY

//get search term 
$searchTerm = $_GET['term']; 
//get matched data from skills table 

$query = $mysqli->query("SELECT sender_id, sender_vat_tax_code, sender_name, sender_foreign_name FROM rm_senders WHERE replace(replace(replace(sender_vat_tax_code, '.', ''), '-', ''), '/', '') LIKE '%".$searchTerm."%' OR concat_ws(' ', sender_name, sender_foreign_name) LIKE '%".$searchTerm."%' ORDER BY sender_name ASC"); 

while ($row = $query->fetch_assoc()) { 

$data[] = array (
'id' => $row['sender_id'], 
'label' => '('.$row['sender_vat_tax_code'].') '. $row['sender_name'].' '.$row['sender_foreign_name'], 
); 

} 

//return json data 
echo json_encode($data); 
+0

私は好奇心が強いです。これはライブウェブサイトですか?私は望んでいない。 –

+0

まだ開発中ですが、なぜあなたは望んでいないのですか? –

答えて

0

まず、あなたがこのライブラリ

をJSインポートする必要があります
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.devbridge-autocomplete/1.2.24/jquery.autocomplete.min.js"></script> 
<link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css"> 
<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> 

HTML

<div class="form-group"> 
    <label>Sender <span class="text-danger">*</span></label> 
    <input type="text" id="sender_name" name="sender_name" required="required" class="form-control" 
      placeholder="Type to select" value=""> 
    <input type="hidden" id="sender_id" name="sender_id"> 
</div> 

AJAX

$(function() { 
    $("#sender_name").autocomplete({ 
     source: 'add_document_sender_autocomplete.php', 
     select: function (event, ui) { 
      var sel = ui.item; 
      $('#sender_id').val(sel.id); 
     }, 
     minLength: 1, 
     autoFocus: false, 
     delay: 250, 
     response: function (event, ui) { 
      if (ui.content.length == 1 && ui.content[0].id != 0) { 
       ui.item = ui.content[0]; 
       $(this).val(ui.item.value); 
       $(this).removeClass('ui-autocomplete-loading'); 
      } 
     }, 
    }); 
}); 

QUERY

$return_arr = array(); 

$tget = "%" . $_GET['term'] . "%"; 
$query = $mysqli->query("SELECT sender_id, sender_vat_tax_code, sender_name, sender_foreign_name FROM rm_senders WHERE replace(replace(replace(sender_vat_tax_code, '.', ''), '-', ''), '/', '') LIKE '%" . $searchTerm . "%' OR concat_ws(' ', sender_name, sender_foreign_name) LIKE '%" . $searchTerm . "%' ORDER BY sender_name ASC"); 
//print_r($stock); 
while ($row = $query->fetch_assoc()) { 
    $row_array['id'] = $row->sender_id; 
    $row_array['label'] = '(' . $row['sender_vat_tax_code'] . ') ' . $row['sender_name'] . ' ' . $row['sender_foreign_name']; 
    array_push($return_arr, $row_array); 
} 
die(json_encode($return_arr)); 
+0

こんにちはIvan、あなたの時間のおかげで、私はデータを取得する変数としてIDを渡す必要があります、右か?この場合、私は変数を作成するSEL var sel = ui.item; $( '#sender_id')。val(sel.id); –

+0

こんにちは@HidDencum、そうです... –

関連する問題