简体   繁体   English

jQuery切换搜索按钮

[英]jQuery toggle search button

I use old javascript code to flip my search button from search to searching in my forms as follows 我使用旧的javascript代码如下所示将搜索按钮从搜索翻转到搜索

<div id="search_clickable"> <input class="search" type="submit" value="search" onClick="javascript:flipSearchButton();"></div>
<div id="search_unclickable" class="hidden"><img src="/assets/img/searching.png" alt=""></div> 

My javascript function is 我的JavaScript函数是

function flipSearchButton()

{
   document.getElementById('search_clickable').style.display = 'none';
   document.getElementById('search_unclickable').style.display = 'block';
}

How to I achieve this with jQuery? 如何使用jQuery实现此目标?

function flipSearchButton(){
    $('#search_clickable').hide(); // or - $('#search_clickable').toggle();
    $('#search_unclickable').show(); // or - $('#search_unclickable').toggle();
}

And stop using inline javascript: 并停止使用嵌入式javascript:

$('.search').click(flipSearchButton);

Note that your search button is of type submit (?!) so it will submit the form, You probably want to change the type to button or return false from the callback: 请注意,您的搜索按钮的类型为submit (?!),因此它将提交表单。您可能希望将类型更改为button或从回调中返回false:

function flipSearchButton(){
    $('#search_clickable').hide();
    $('#search_unclickable').show();
    return false;
}

include jquery: 包括jQuery:

<script type="text/javascript" src="jquery.js"></script>

then: 然后:

function flipSearchButton()

{
   $('#search_clickable').hide();
   $('#search_unclickable').show();
}

i thought something like this: 我以为是这样的:

$("#search_clickable").click(function() {
  $("#search_clickable").hide();
  $("#search_unclickable").show();
});

if you wanna toggle this element, use toggle() instead of hide() and show(). 如果要切换此元素,请使用toggle()而不是hide()和show()。

You can also consider to use fade effect to improve user experience 您还可以考虑使用淡入淡出效果来改善用户体验

function flipSearchButton() 
{
  $('#search_unclickable').fadeIn('slow', function() {
    // Animation complete
  });
  $('#search_clickable').fadeOut('slow', function() {
    // Animation complete
  });
};

You don't even need a separate function: 您甚至不需要单独的功能:

$("input[type=submit").click(function() {
   $("#search_clickable").hide();
   $("#search_unclickable").show();
});

Or use the id/class of the submit button if you want to on a specific button: 或者,如果要在特定按钮上使用,请使用提交按钮的ID /类:

$(".search").click(function() {
   $("#search_clickable").hide();
   $("#search_unclickable").show();
});

Please refer below URL for toggle Div. 请参考以下网址以切换Div。

Check below Working Demos 查看下面的工作演示

As per your question : Demo1 根据您的问题: Demo1
As per my opinion : Demo2 根据我的意见: Demo2

Thanks 谢谢

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM