网上曾有过两段Google和百度站内搜索的代码,如下(注意:代码中的“网站地址”要去掉http://)
<!--Google站内搜索开始-->
<form method=get action="http://www.google.com/search">
<input type=text name=q>
<input type=submit name=btnG value="Google 搜索">
<input type=hidden name=ie value=GB2312>
<input type=hidden name=oe value=GB2312>
<input type=hidden name=hl value=zh-CN>
<input type=hidden name=domains value="网站地址">
<input type=hidden name=sitesearch value="网站地址">
</form>
<!--Google站内搜索结束-->
<!--Baidu站内搜索开始-->
<form action="http://www.baidu.com/baidu">
<input type=text name=word>
<input type="submit" value="Baidu 搜索">
<input name=tn type=hidden value="bds">
<input name=cl type=hidden value="3">
<input name=ct type=hidden value="2097152">
<input name=si type=hidden value="网站地址">
</form>
<!--Baidu站内搜索结束-->
试用了一下,由于博客编码或者少代码的关系,可能出现以下两个问题。
1、出现乱码的解决方法:在form表单内添加如下代码(如果是Google的话,把代码里的GB2312改成UTF-8就可以了)
<input type=hidden name=ie value="UTF-8">
2、搜索结果无法在新页面显示的解决方法:将第一行改为如下代码
<form action="http://www.baidu.com/baidu" target="_blank">
下面是Google和百度Javascript版站内搜索代码(未测试)
<!--Google站内搜索开始-->
<script type="text/javascript">
function googlesearch () {
var wq=document.getElementsByName("wq")[0].value;
var link="http://www.google.com/search?domains=网站地址&sitesearch=网站地址&q=" wq;
window.open(link); }
</script>
<input type="text" name="wq"/><input type="submit" onclick="javascript:googlesearch()" value="Google 搜索" />
<!--Google站内搜索结束-->
<!--Baidu站内搜索开始-->
<script language="javascript">
function baidusearch () {
var wd=document.getElementsByName("wd")[0].value;
var link="http://www.baidu.com/s?si=网站地址&cl=3&ct=2097152&tn=baidulocal&word=" wd;
window.open(link); }
</script>
<input type="text" name="wd"/><input type="submit" onclick="javascript:baidusearch()" value="Baidu 搜索" />
<!--Baidu站内搜索结束-->