这是我的HTML
<form id="procurar-novo">
<input type="text" name="procurar" placeholder="Pesquisar no Site" value="">
<input id="procurar-submit" type="button" value="›">
</form>
这是我的jQuery
<script type="text/javascript">
$(document).ready(function(){
$('#procurar').submit(function(e) {
e.preventDefault();
//edited
window.open = ('http://www.psicotropicus.org/'+'/busca'+encodeURIComponent($('#procurar-submit').val()), '_blank');
return false;
});
});
</script>
ideai是通过点击提交,javascript / jquery将获得#procurar-submit值并将其添加到URL并重定向用户。
_blank仍然不起作用
提前致谢。
答案 0 :(得分:2)
将window.open与第二个参数_blank
一起使用window.open('url', '_blank');
也可以尝试:
<script type="text/javascript">
$(document).ready(function(){
$('#procurar').submit(function(e) {
e.preventDefault();
//edited
window.open = ('http://www.psicotropicus.org/'+'/busca'+encodeURIComponent($('#procurar-submit').val()), '_blank');
return false;
});
});
</script>
上次修改:
<script>
$(document).ready(function(){
$('form#procurar-novo').submit(function(e) {
//e.preventDefault();
//edited
var url = 'http://www.psicotropicus.org'+'/busca'+ encodeURIComponent('&' + $('input[name=procurar]').val());
window.open(url, '_blank');
return false;
});
});
</script>
<form id="procurar-novo">
<input type="text" name="procurar" placeholder="Pesquisar no Site" value="">
<input id="submitsss" type="submit" value="›">
</form>
请考虑表单元素的名称和ID:)
答案 1 :(得分:1)
您似乎没有在表单标记上指定操作。为什么不将第二个输入元素从type=submit
更改为type=button
。然后,您可以绑定该按钮上的单击事件,并完全控制接下来发生的事情。您不必担心阻止默认提交操作。您可以执行以下操作:
$(document).ready(function(){
$(document).on('click', '#procurar-submit', function() {
window.location.href = 'http://www.psicotropicus.org/busca'+$('input[name="procurar"]').val();
});
});
要打开像'_blank'这样的新窗口,您可以将代码更改为:
$(document).ready(function(){
$(document).on('click', '#procurar-submit', function() {
window.open('http://www.psicotropicus.org/busca'+$(input[name="procurar"]).val(), '_blank');
});
});
但要小心弹出窗口拦截器
修改强> 我更改了获取文本字段值的选择器。 我可能会在该文本字段中添加一个类或id,以便可以将其与其他字段区分开来。见fiddle