Sunday, 3 June 2018

Suggestion box not showing for nearest input

I cannot seem to get my suggestion box to show for the nearest input after adding more inputs dynamically.
The below code is where I am currently, I can see the suggestion box for a new input and add to that new input but if I go back to edit the input data the suggestion box fails to show.
<div id="tester"></div>
<button id="add_test">ADD</button>



$(document).ready(function() {

$("#add_test").on("click", function() {
    var input = '<div class="flavhey"><div class="flavourInput">
<input class="ftext form-control flavour-name-input" type="text" name="flav-name-input" value="" placeholder="Flavour Name" />
<div class="suggestion-box"></div></div></div>';
    $('#tester').append(input);
});


$(document).on('keyup', '.flavhey input', function(e){


    var token = '<?php echo json_encode($token); ?>';
    var search = $(this).val();

    $.ajax({
        type: "POST",
        url: "controllers/recipeControl.php",
        data: { token: token, search: search },
        beforeSend: function(){
            $(".flavour-name-input").css("background","#FFF no-repeat 165px");
            $(".suggestion-box").css("background","#FFF no-repeat 165px");
    },
    success: function(data){


        $('.flavhey input').closest('flavourInput input').next('.suggestion-box').show();
        $('.flavhey input').next('.suggestion-box').html(data);
        $(".suggestion-box").css("background","#FFF");
    }
    });
    return false;
});
$(document).on("click",".search-flavour",function(e) {
    e.preventDefault();

        $(this).closest('.flavourInput').find('.flavour-name-input').val($(this).text());

        $('.suggestion-box').hide();
    return false;

if(isset($_POST['search'])) {
    if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' && isset($_POST['token']) 
        && json_decode($_POST['token']) === $_SESSION['token']){
            $search = $_POST['search'];
            $html = '<ul>';
            $content = $flavours->getAllFlavoursSearch($search);
            foreach ($content as $con) {
                $html .= '<li class="search-flavour"><b>'.$con['flavour_name'].'</b> - <i>'.$con['flavour_company_name'].'</i></li>';
            }
            $html .= '</ul>';
            echo $html;
        }

    }



from Suggestion box not showing for nearest input

No comments:

Post a Comment