2012-04-18 92 views
0

我正在为历史课程创建谷歌审查的模拟版本。我试图修改重定向URL,所以我可以把我自己的方式进入的网址:Javascript URL重定向

function searchCensor() 
{ 
var keyTerms = document.getElementById("search").value; 
if(keyTerms == "censorship") 
    window.location = "http://andrewgu12.kodingen.com/history/censor.php"; 
else 
    window.location = "https://www.google.com/#hl=en&output=search&sclient=psy-ab&q="+keyTerms+"&oq="+keyTerms+"&aq=f&aqi=g4&aql=&gs_l=hp.3..0l4.851563l851824l0l851964l3l3l0l0l0l0l171l359l1j2l3l0.&pbx=1&bav=on.2,or.r_gc.r_pw.r_cp.r_qf.,cf.osb&fp=bb242dc4ab43ba95&biw=1920&bih=963" 
} 
在else块

,我尝试插入keyTerms到URL,但我最终未定义当搜索开始。有什么建议么?下面是该网站的网址:http://andrewgu12.kodingen.com/history/

+0

id必须是唯一的。您的网页上有两次相同的ID(搜索)。 – Paulpro 2012-04-18 03:33:52

回答

1

“搜索”链接在同一页的顶部栏上有search相同的ID,因此,当你做你的document.getElementById('search'),JavaScript和id = search返回的第一个元素在DOM ,这是顶部栏上的anchor而不是您的输入。

可以代替给予name属性搜索表单:

<form id="searchBox" name="searchForm"> 
    <input type="text" id="search" name="search" size="85"><br>   
</form> 

而在你的js

var keyTerms = document.searchForm.search.value; 
// rest of your code 
0

在顶部标题栏,你有一个按钮标记为“搜索”那也有ID "search"。尝试从该元素中删除该ID。