如何控制jquery上的加法和减法?

时间:2016-10-03 07:52:11

标签: javascript jquery

我正在尝试按钮点击计数,如果.kisi-sayi-text值为= 0,我想添加if else语句不添加但我的代码上没有任何内容

HTML

<div class="count-box yetiskin-count">
        <span class="count-text">Yetişkin:</span>
        <span class="kisi-down"></span>
        <span class="kisi-sayi-text">1</span>
        <span class="kisi-up"></span>
    </div>

JQUERY

$('.yetiskin-count > .kisi-up').on("click",function(){
  var topParents = $(this).parents(".yetiskin-count"),
      kisiSayiText   = topParents.find(".kisi-sayi-text"),
      kisiSayiNumber = kisiSayiText.html(parseInt($(".kisi-sayi-text").html())+1);

     if(kisiSayiNumber<0){
        return false;
     }
});

4 个答案:

答案 0 :(得分:0)

请替换此行

kisiSayiNumber = kisiSayiText.html(parseInt($(".kisi-sayi-text").html())+1);

kisiSayiNumber = kisiSayiText.html(parseInt($(".kisi-sayi-text").text())+1);

我将以您想要的方式开始添加

答案 1 :(得分:0)

您遇到的问题不在.kisi-up点击事件中,您应该查看.kisi-down点击处理程序,因为它处理减法,因此它会在达到0时停止减去。

$('.yetiskin-count > .kisi-up').on("click",function(){
     var topParents = $(this).parents(".yetiskin-count"),
       kisiSayiText = topParents.find(".kisi-sayi-text"),
       kisiSayiNumber = parseInt($(".kisi-sayi-text").html());
     kisiSayiText.html(kisiSayiNumber + 1);
});

$('.yetiskin-count > .kisi-down').on("click",function(){
     var topParents = $(this).parents(".yetiskin-count"),
       kisiSayiText = topParents.find(".kisi-sayi-text"),
       kisiSayiNumber = parseInt($(".kisi-sayi-text").html());
     if(kisiSayiNumber <= 0){
        return false;
     }
     kisiSayiText.html(kisiSayiNumber - 1);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="count-box yetiskin-count">
        <span class="count-text">Yetişkin:</span>
        <span class="kisi-down">&lt;</span>
        <span class="kisi-sayi-text">1</span>
        <span class="kisi-up">&gt;</span>
    </div>

比较一下:

$('.yetiskin-count > .kisi-up').on("click",function(){
  var topParents = $(this).parents(".yetiskin-count"),
      kisiSayiText   = topParents.find(".kisi-sayi-text"),
      kisiSayiNumber = kisiSayiText.html(parseInt($(".kisi-sayi-text").html())+1);

     // kisiSayiNumber is a jQuery object, not a number so there is no point comparing it with 0
     if(kisiSayiNumber<0){
        return false;
     }
});

用这个:

$('.yetiskin-count > .kisi-up').on("click",function(){
  var topParents = $(this).parents(".yetiskin-count"),
      kisiSayiText = topParents.find(".kisi-sayi-text"),
      kisiSayiNumber = parseInt(kisiSayiText.html());

      // if the current running number is less than or equal to 0 then don't add
      if (kisiSayiNumber <= 0)
          return false;
      kisiSayiText.html(kisiSayiNumber + 1);
});

答案 2 :(得分:0)

问题出在您的<span class="kisi-up"></span>中..尝试输入一些数据。

例如

<span class="kisi-up">Click Me</span>

因为您无法点击范围kisi-up

&#13;
&#13;
 $('.yetiskin-count > .kisi-up').on("click",function(){
  var topParents = $(this).parents(".yetiskin-count"),
      kisiSayiText   = topParents.find(".kisi-sayi-text"),
      kisiSayiNumber = kisiSayiText.html(parseInt($(".kisi-sayi-text").html())+1);

     if(kisiSayiNumber<0){
        return false;
     }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="count-box yetiskin-count">
        <span class="count-text">Yetişkin:</span>
        <span class="kisi-down"></span>
        <span class="kisi-sayi-text">1</span>
        <span class="kisi-up">Click Me</span>
    </div>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

&#13;
&#13;
  $('.yetiskin-count > .kisi-up').on("click",function(){
  
  var topParents = $(this).parents(".yetiskin-count");
    var  kisiSayiText   = topParents.find(".kisi-sayi-text");
      if($(".kisi-sayi-text").html()<=0){
        return false;
     };
      kisiSayiNumber = kisiSayiText.html(parseInt($(".kisi-sayi-text").html())+1);

     
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="count-box yetiskin-count">
        <span class="count-text">Yetişkin:</span>
        <span class="kisi-down"></span>
        <span class="kisi-sayi-text">1</span>
        <span class="kisi-up">click here</span>
    </div>
&#13;
&#13;
&#13;

喜 您需要在span标记中包含一些内容才能单击并确保包含JQuery库。您可以运行代码段来检查功能。 我希望这能解决你的问题。快乐的编码!!!