2011-04-12 53 views
1

我正在爲Firefox編寫一個新的標籤頁擴展程序,我想要一個可以輸入的框並讓它搜索Google。我真的不想使用自定義Google搜索,只是因爲我覺得它不一致,而且看起來很便宜。Google搜索框只能在50%的時間內運行

它應該做的所有事情就是將您的查詢添加到谷歌網址的末尾(當然是正確的格式)並將您重定向到該頁面。我有時會讓它工作,但不是所有的時間。

這裏是我的代碼:

JS:

var textstring; 

//Gets the text from the form 
function getQ() { 
    textstring = document.forms['Search'].elements[0].value; 
} 

//Does a Google Search 
function googleSearch() { 
    window.location ="http://www.google.com/search?q="+textstring; 
} 

//main function to run everything 
function main() { 
    getQ(); 
    googleSearch(); 
} 

HTML:

<form name="Search" > 
<div id="test1"> 
    <input type="text" name="q" size="31" maxlength="255" value="" /> 
</div> 
<div id="test2"> 
    <input type="button" value="Google Search" onclick="main();" /> 
</div> 
</form> 

不知道爲什麼,去年/形態沒有顯示出來,但是這是在那裏只是所以你們知道。

它的工作原理是25%的時間。我無法弄清楚它有什麼問題。難道我只是在本地測試它嗎?我一直在Firefox中測試它,但它在IE或Chrome中似乎也有同樣的問題。

回答

1

爲什麼你不只是提交到谷歌(,並避免所有的javascript)?

<form name="Search" method="get" action="http://www.google.com/search" > 

,並使用像

<input type="submit" value="Google Search" /> 

正常的提交按鈕既然你有一個名爲input元素q和形式的方法是get它會創建正確的URL。

例如:http://jsfiddle.net/gaby/gxun9/

+0

不知道我能做到這一點。謝謝!完美的作品,讓它變得更加簡單。 :) – JacobTheDev 2011-04-12 15:48:18

+0

啊該死的。看起來像是在做同樣的事情......不知道這是怎麼回事:/ – JacobTheDev 2011-04-12 15:53:01

+0

沒關係,只是忘了method =「get」 – JacobTheDev 2011-04-12 15:54:04