2013-07-13 112 views
0

我有一個wordpress geo主題驅動的網站,用戶可以搜索活動。當我開始在搜索事件的文本框中寫入任何內容時,則會出現一個自動完成者建議(這是一個插件)。點擊任何建議後,它將填充文本框,並將表單提交到索引頁面。如何在WordPress的網站中使用javascript重定向到另一個鏈接?

但是我需要點擊建議之後,它會填充文本框(當前正確)並將頁面重定向到另一個鏈接,如下所示:http://sitename.com/events/text-comes-from-text-box
「text-comes-from-text-box」是單擊該建議後將形成文本框的文本。

建議來自一個插件和建議來到這個頁面「review_searchform.php」。建議來作爲<div id='ac_results'><ul><li>。 我試圖找出,如果我點擊<li>這是來自插件正在響應。爲此,我在 review_searchform.php此頁面使用此代碼,但它不起作用。我的代碼如下,

<script type="text/javascript"> 

    jQuery("#ac_results ul li").click(function() { 
    alert("test 2"); 

}); 

如果它的工作,那麼我會在此處添加重定向代碼。 我認爲要解決這個問題,它不需要PHP或WordPress的功能。它只需要Javascript/jQuery。

+0

你可以添加該建議的HTML代碼? –

+0

回答

2

確定可以說你的建議箱是class="suggestion"一個div。

我們希望將我們的頁面作爲地址重定向到此建議文本。

您的建議HTML

<div class="suggestion">Air Control Service</div> 

點擊這個鏈接您的訪問者必須去這個地址後權的例子? :

http://sitename.com/events/Air-Control-Service 

好吧,然後讓我們寫我們的jQuery代碼。

$(document).ready(function(){ //Take care to conflict issue 
    $(".suggestion").on("click", function(){ //When visitor clicks your suggestion 
    var eventText = $(this).text(); //Get text from suggestion 
    eventText = eventText.replace(" ","-"); //Replace "-" for " " 
    var base = "http://sitename.com/events/"; //Set your base address 
    window.location.href = base + eventText; //Redirect your visitor 
    }); 
}); 

就是這樣,我希望這會很有幫助。

編輯:將我的腳本更改爲.on()版本。現在阿賈克斯的回報也包括在事件中。

+0

不幸的是,它不工作。建議來自wordpress plugin.div(#ac_results),ul,li不是我們頁面中用戶寫入事件名稱的部分,它來自通過ajax的插件。我認爲這是造成問題的原因。 –

+0

然後你必須se .on()事件的jquery –

+0

謝謝,它的工作。 –

1

window.location = your_url會讓你的瀏覽器重定向立即

+0

我需要在點擊建議後傳遞文本框的值。但是,當我點擊該建議時,它會填充文本框,但它不會與文本框的值重定向。 –

+0

好的,我相信上面的這些答案會給你很好的建議。 – Rikky

1
$("#ac_results ul li").each(function() { 
    $(this).click(function() { 
     window.location = $(this).text(); 
    }); 
}); 
相關問題