如何使用散列進行實時搜索? 現在我有一個簡單的jQuery搜索:jquery搜索和散列
$(function(){
/// Start searching
$("form#search-form").submit(function(e){
var hash = 'q=' + encodeURI(document.getElementById('q').value);
window.location.hash = hash;
e.preventDefault();
$("#results").fadeOut();
$.ajax({
type:"GET",
data: $(this).serialize(),
url: "search.php",
success: function(msg){
$("#results").html(msg).fadeIn();
}
});
});
});
正如你看到的,我已經在這裏
var hash = 'q=' + encodeURI(document.getElementById('q').value);
window.location.hash = hash;
加入到在哈希搜索輸入。所以我的想法是輸入「http:// url /#q = word」,並得到「word」的結果。目前,我的「散列函數」是無用的,它什麼都不執行 - 只是增加了地址欄的價值。我怎麼能讓jquery以這種方式執行?
我嘗試添加
if (window.location.hash != "") {
}
,但它並不能幫助。或者我曾經錯誤地做過。
感謝您的回答。但就我而言,這種火箭科學根本行不通。我有這樣的錯誤:未定義的索引:search _and_ language - 它是'$ search'和'$ language'行。用'echo $ _POST ['data']'獲得'{\「search \」:\「word \」,\「lang \」:\「Engl \」}'; – zmogusnamas 2012-07-29 16:44:53
嘗試'print_r($ data);'在我的第一行之後。它返回什麼? – Kir 2012-07-29 16:51:49
我的老search.php看起來像這樣:http://pastebin.com/uHN9ajaE正如你所說我添加了:'$ data =(array)json_decode($ _ POST ['data']);' '$ search = $ data''search'];' '$ language = $ data ['language'];'並且沒有「空白搜索」 '$ var = $ data ['search'];'之後我替換了$ search_term' with'$ search' – zmogusnamas 2012-07-29 16:53:02