我正在使用这个script page的javascript搜索引擎,它允许我选择不同的提供商/搜索引擎来执行Google搜索,但是我试图在新窗口中打开它按下发送按钮,但没有成功。
我已经尝试过使用:
target="_blank"
在<input type="button" value="Send" onClick="startSearch()" target="_blank">
中并且没有任何反应,或者:
<form name="searchForm" target="_blank">
没有!
我也尝试使用_new而不是_blank,但也没用。
最后,我测试了w3schools.com example上建议的内容,但不幸的是再次失败。
伙计们,请帮忙吗?谢谢!
答案 0 :(得分:1)
<a href="http://www.stackoverflow.com/" target="_blank">
<input type="button" value="Send" />
</a>
答案 1 :(得分:0)
要在新窗口中打开链接,因为您使用<form>
代替<a>
链接,您必须更改示例中显示的javascript,首先在表单中添加ID所以它可以通过DOM轻松访问:
<form id="searchForm" name="searchForm" target="blank">
然后,更改最后一个javascript行而不是location.href,它会更改表单的操作并提交它:
document.getElementById("searchForm").action = finalSearchString;
document.getElementById("searchForm").submit();
示例:
答案 2 :(得分:0)
快速而又脏,你可以使用window.open();
方法在新窗口中打开搜索,这里有一些更新的HTML:
<form method="GET" action="#" id="search-form">
<p><label>Search for: <input type="text" id="q" /></label></p>
<p><label>Search from: <select id="engine">
<option selected="selected" value="http://www.google.com/search?q=">Google</option>
<option value="http://www.bing.com/search?q=">Bing</option>
<option value="http://search.yahoo.com/search?p=">Yahoo!</option>
<option value="http://search.aol.com/aol/search?q=">AOL</option>
</select></label></p>
<p><input type="button" value="Send" id="send" /></p>
</form>
JavaScript:
<script>
var ID = function(str){return(document.getElementById(str));};
ID('send').addEventListener('click', function(){
var search = ID('q').value, select = ID('engine'), engine = select.options[select.selectedIndex].value;
if(!search) {
alert('Please include a search string');
} else {
window.open(engine + search);
}
});
</script>
只需确保在页面末尾调用该内容或将其置于DOMContentLoaded
事件或其他内容中。