0

我只想在按下按钮时显示表单。这工作正常。当我再次单击该按钮时,我希望表单消失。有人可以解释问题是什么吗?谢谢!

<script type="text/javascript">
$(document).ready(function() {

 $('#instantchannel').hide(); //Initially form wil be hidden.
 var numclicks = 2
  $('#instant').click(function() {
  if(numclicks%2==1){
  numclicks=++;
   $('#instantchannel').show();//Form shows on button click
}else{
numclicks=++;
 $('#instantchannel').hide();//Form shows on button click
}
   });
 });
 </script>
4

3 回答 3

2

jQuerytoggle为这些情况提供了一个方法:

$('#instant').click(function() {
  $('#instantchannel').toggle();
});
于 2013-04-14T18:15:33.530 回答
1

你缺少一个;after var numclicks = 2。此外,numclicks单击按钮时不再可见。而且,您应该使用toggle().

$(document).ready(function() {
  $('#instantchannel').hide(); //Initially form wil be hidden.
  $('#instant').click(function() {
    $('#instantchannel').toggle();//Form toggles on button click
  });
});
于 2013-04-14T18:16:32.923 回答
0

您不必计算点击次数。只需使用.toggle功能。

<script type="text/javascript">
$(document).ready(function() {

 $('#instantchannel').hide(); //Initially form wil be hidden.
 $('#instant').click(function() {
  $('#instantchannel').toggle();
 });

});
</script>

但是,如果您想知道代码中的问题,那么您缺少;aftervar numclicks = 2并且正确的用法++运算符是numclicks++;.

于 2013-04-14T18:16:48.270 回答