搜索后清除输入

clear input after search

本文关键字:输入 清除 搜索      更新时间:2023-09-26

我的网站上有一个搜索框。搜索效果很好。我希望在您提交搜索后清除搜索字段。我让它清除onclick,但onsubmit不起作用。它肯定是提交搜索,因为我可以看到结果。

js

<script type="text/javascript">
function clearDefault(el) {
if (el.defaultValue==el.value) el.value = ""
}
function clearText(thefield){
if (thefield.defaultValue==thefield.value)
thefield.value = ""
}
</script>

视图

<%= form_tag guidelines_path, :class => 'navbar-search pull-right', :onSubmit=>"clearText(this)",:method => :get do %>  
<%= text_field_tag :search, params[:search], :class => 'search-query', :placeholder=>"Search", :ONFOCUS=>"clearDefault(this)" %> <% end %

>

onsubmit不是文本字段的事件,而是它所属的窗体。如果将onsubmit属性移动到窗体,它应该会将其清除。

与其将字段作为参数传递,为什么不直接通过字段的类获取字段呢?所以使用jquery:

function clearText(){
    search = $('.search-query');
    if (search.defaultValue==search.value)
    search.value = ""
}

如果由于某种原因无法使用jQuery,您可以尝试为表单字段分配一个ID,然后使用document.getElementById()?