2015-08-16 67 views
0

我首先製作了一個用於直接搜索的簡單JQuery和PHP代碼。 我發現了一個JQuery,proffecinal顯示用戶搜索與漂亮的設計,但我不能讓PHP代碼,使其搜索我需要知道從哪裏發佈帖子和其他事情我不是很好jQuery中。 此外,我得到了一個未定義我覺得不能從php價值我只需要值而不是整個代碼搜索PHP - JQuery |即時/直接搜索無法找到PHP代碼

jQuery代碼:

$("#quick-search-input").click(function(){ 
    $(".ac-results").css({ 
     left:$("#quick-search").position().left 
    }) 
}); 
var s=$("#quick-search-input").val(); 
$("#quick-search-input").focus(function(){ 
    if(s==$("#quick-search-input").val()){ 
     $("#quick-search-input").val("") 
    } 
    else if($("#quick-search-input").val().length>2&&$(".ac-results ul").not(":empty")){ 
      $(".ac-results").slideDown() 
    }; 
    $(".ac-results").css({ 
     left:$("#quick-search").position().left 
    }) 
}); 
$("#quick-search-input").blur(function(){ 
    if($("#quick-search-input").val().trim()===""){ 
     $("#quick-search-input").val(s) 
    } 
}); 
$("#quick-search-input").keyup(function(e){ 
    var t=e.keyCode||e.which,s={up:38,down:40,left:37,right:39,esc:27,enter:13}; 
    if(t===s.enter||t===s.esc||t===s.up||t===s.down||t===s.left||t===s.right){ 
     return!1 
    }; 
    var o=$("#quick-search-input").val(); 
    if(o.length>=3){a(function(){ 
     $(".ajax-spinner").fadeIn("fast");$.ajax({ 
      url:"../directsearch",data:{"query":o},type:"post",success:function(e){ 
       var t="";if(e.status==="ok"){ 
        e.data.forEach(function(e){ 
         t+="<li><a href=\""+e.url+"\"><img src=\""+e.img+"\"><span>"+e.title+"</span><p>"+e.year+"</p></a></li>" 
        }) 
       } 
       else{ 
        t="<li class=\"ac-no-results\">"+e.message+"</li>" 
       }; 
       $(".ac-results ul").html(t); 
       if(!$(".ac-results").is(":visible")){ 
        $(".ac-results").slideDown() 
       }; 
       $(".ac-results ul li:first-child").addClass("ac-item-hover"); 
       $(".ac-results ul li:first-child").addClass("ac-item-selected"); 
       $(".ajax-spinner").fadeOut("fast")},error:function(e){ 
        var t="";t="<li class=\"ac-no-results\">Error: "+e.statusText+" (Code "+e.status+")</li>"; 
        $(".ac-results ul").html(t); 
        if($(".ac-results").not(":visible")){ 
         $(".ac-results").slideDown() 
        }; 
        $(".ac-results ul li:first-child").addClass("ac-item-selected"); 
        $(".ajax-spinner").fadeOut("fast") 
       } 
     }) 
    },500)} 
}); 
$(document).keydown(function(e){ 
    if($(".ac-results").is(":visible")){ 
     var o=e.keyCode||e.which,s={ 
      up:38,down:40,esc:27,enter:13 
     }; 
     if(o===s.esc){$(".ac-results").slideUp(); 
     return!1}; 
     if(!$(".ac-results li").hasClass("ac-no-results")){ 
      var t=$(".ac-results"), 
      a=$(".ac-results ul li").hasClass("ac-item-selected"), 
      n=$(".ac-results ul li").first().hasClass("ac-item-selected"), 
      i=$(".ac-results ul li").last().hasClass("ac-item-selected"); 
      switch(o){ 
       case s.up:if(a){ 
        if(n){ 
         $("li.ac-item-selected",t).removeClass("ac-item-selected"); 
         $("ul li",t).last().addClass("ac-item-selected"); 
         break 
        }; 
        $("li.ac-item-selected",t).prev().addClass("ac-item-selected"); 
        $("li.ac-item-selected",t).next().removeClass("ac-item-selected") 
       } 
       else{ 
        $("ul li",t).last().addClass("ac-item-selected") 
       }; 
       break; 
       case s.down:if(a){ 
        if(i){ 
         $("li.ac-item-selected",t).removeClass("ac-item-selected"); 
         $("ul li",t).first().addClass("ac-item-selected"); 
         break 
        }; 
        $("li.ac-item-selected",t).next().addClass("ac-item-selected"); 
        $("li.ac-item-selected",t).prev().removeClass("ac-item-selected") 
       } 
       else{ 
        $("ul li",t).first().addClass("ac-item-selected") 
       }; 
       break; 
       case s.enter:window.location.href=$("li.ac-item-selected a",t).attr("href"); 
       break 
      } 
     } 
    } 
}); 
$(document).click(function(e){ 
    var t=$(e.target); 
    if($(".ac-results").is(":visible")&&(0 in t)&&t[0].id!="quick-search-input"&&e.target.tagName.toLowerCase()!=="a"){ 
     $(".ac-results").slideUp() 
    } 
}); 
$(".ac-results ul").on("mouseover","li",function(){ 
    $(this).addClass("ac-item-selected").siblings().removeClass("ac-item-selected") 
}); 
var a=(function(){ 
    var e=0;return function(t,s){ 
     clearTimeout(e);e=setTimeout(t,s) 
    } 
}) 
(), 
e=0; 
setInterval(function(){ 
    var t=12,s=16,a=e*-s; 
    $(".ajax-spinner").css({"backgroundPosition":a+"px 0px"}); 
    e++;if(e>=t)e=0},100); 

回答

0

好,用螢火檢查控制檯告訴我哪當您嘗試搜索時出現錯誤,我想知道路由(我認爲您在這裏遇到了問題,但我想確認是否在控制檯Firebug上進行了捕獲)

+0

我getted誤差值,但我現在固定它...我沒有得到任何錯誤,但它說不確定again..now它的響應。 ..不反應,jquery想要得到...我怎麼能把代碼從PHP發送到這個jQuery ..我想要PHP發送代碼。現在它發佈的權利,但說undefined .. –

+0

看看這個[快速搜索](https://yts.to/)它是如何得到的價值...? –

0

可以顯示您的php文件嗎?裏面你的PHP文件,你需要做這樣的事情:

<?php 

$data = /*get your data*/; 

header('Content-Type: application/json'); 

/*proces your data*/ 

echo json_encode($data); 

?> 
+0

錯誤:好(代碼200)...現在它的api .. –

+0

我怎樣才能讓json可讀php –

+0

只需打印這個json_encode($ data),也許我不明白你的問題...... =) –