2013-12-12 28 views
0

我有这样的代码:形式onsumbit执行函数

function src(){ 
    var id = document.getElementsByName("query")[0].value; 
    window.location.href = "/search/?query=" + id; 
} 
var f_src = document.getElementById("search_form"); 
if(f_src) 
    f_src.onsubmit = function(){src();return false;}; 

我在与提交部分问题:我想,当我在场上“URL”进入“例如”被重定向到“/ search /?query = example”,但它不起作用,有帮助吗?

HTML:

<form id="search_form" method="get" action="" name="search_f"> 
    <input id="search_field" maxlength="100" name="query" type="text" value="" placeholder="<?php echo $src_txt; ?>"> 
    <input id="search_button" type="submit" value=""> 
    </form> 

感谢。

+0

而''领域确有'name' “URL”?请发布您的HTML以及显示您执行代码的位置/时间。你在控制台中是否有任何错误? –

+0

删除返回false;从最后开始,它将从提交的形式开始。 –

+0

@Felix Kling,我的HTML是干净的输入是“url”,我没有任何错误 – Xriuk

回答

3

除了您可能遇到的问题,您可以在没有JavaScript的情况下实现相同的行为。你只需要给表单元素命名为“查询”,并提交一个GET请求来/search

<form id="search_form" method="get" action="/search/" name="search_f"> 
    <input id="search_field" maxlength="100" name="query" type="text" value="" placeholder="<?php echo $src_txt; ?>"> 
    <input id="search_button" type="submit" value=""> 
</form> 

action属性告诉浏览器做出请求。每个带有name的表单控件元素都将包含在查询字符串中。

无需JavaScript。

+0

哦,男人谢谢你,这就是我正在寻找的东西,我不是一个好程序员,所以很抱歉我的错误,只是谢谢! – Xriuk

0

如果你不使用JavaScript的坚持,你可以做到这一点用好老的HTML:

<form action="/search/" method="get"> 
    <input name="query" /> 
</form> 
+1

http://stackoverflow.com/editing-help#code;) –

+0

谢谢!我现在在手机上浏览,这是很痛苦的:-) –

+0

哦,是的,我可以联系。我甚至不会回答手机的问题;) –