私はその下の提案ドロップダウンメニューで検索メニューに取り組んでいます。提案をクリックすると、製品にリダイレクトする必要があります。現在、このコードを使用しては、mysql ajaxドロップダウンメニューをクリックした後、リンクにリダイレクトされます
イム:
<script type="text/javascript">
$(document).ready(function(){
$('.search-box input[type="text"]').on("keyup input", function(){
/* Get input value on change */
var inputVal = $(this).val();
var resultDropdown = $(this).siblings(".result");
if(inputVal.length){
$.get("./includes/backend-search.php", {term: inputVal}).done(function(data){
// Display the returned data in browser
resultDropdown.html(data);
var link = data;
});
} else{
resultDropdown.empty();
}
});
// Set search input value on click of result item
$(document).on("click", ".result p", function(){
$(this).parents(".search-box").find('input[type="text"]').val($(this).text());
$(this).parent(".result").empty();
window.location = link;
});
});
</script>
そして、ここでは、私は現在のonclickでwindow.locationの機能を使用してリンクを開くしようとしているHTML
<div class="search-box">
<input type="text" autocomplete="off" placeholder="Search product..." />
<div class="result"></div>
</div>
の私の検索ボックスであります関数。リンクは、提案されたデータからvarとして設定されます。
これまでのところ、それはリンクされていないので動作しません。 誰にでもこれを修正する方法がありますか?ありがとう、 - ジュリアン。
「$(this).text()」の値を感じているのは、クリック時の最初のチェックです。 –
var link = data; ...あなたはその適切なリンクを考えていますか? console.log(link) –
あなたの 'link'変数は、コールバック関数内のローカル変数です。スクリプトの先頭に変数を定義し、コールバック関数に値 'data'を割り当てます。 – KKK