2016-10-03 1 views
0

내가 버튼으로 카운트 클릭을 할 노력하고있어 나는 .kisi-sayi-text 값을 추가하지 마십시오 = 0하지만 아무것도 내 코드jquery에서 더하기 및 빼기를 제어하는 ​​방법은 무엇입니까?

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

에 무슨 일이 생긴없는 경우 경우 else 문을 추가 할
$('.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; 
    } 
}); 
+0

이 간단한 코드를 사용하십시오. https://jsfiddle.net/8wss6b58/ – Mohammad

답변

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); 
}); 
+0

그래,하지만 아무것도 작동하지 않는다 –

+0

oow 미안하지만 작동합니다 –

+0

하지만 그 이후에도 추가하고 싶다면 내 번호가 0이면 일부 이슈가있는 것 같아요 –

0

이 줄을 교체하십시오

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

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

그리고 것, 그래서는 뺄셈을 처리하는대로 나는 또한 당신이

+0

기술적으로 더 좋지만 OP와 아무런 차이가 없으며 OP가 수행하고자하는 작업에는 영향을주지 않습니다. –

+0

먼저 구문이 수정되고 있습니다. – Gurria

0

문제는 당신 <span class="kisi-up"></span>에 .. 일부 데이터를 넣어보십시오. 예를 들어

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

당신은 범위를 클릭 할 수 없기 때문에 kisi-up

$('.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; 
 
    } 
 
});
<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>

0

$('.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); 
 

 
     
 
});
<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>

안녕하세요, JQuery 라이브러리를 포함하려면 반드시 span 태그에 내용을 입력해야합니다. 스 니펫을 실행하여 기능을 확인할 수 있습니다. 이 방법으로 문제가 해결되기를 바랍니다. 행복한 코딩 !!!

+0

이 코드는 0보다 작거나 같은 조건에서 작동합니다 – amyth

관련 문제