2017-01-30 60 views
0

我在我的HTML跨度元件如下所示包含值0:如何獲取jQuery中的html span元素的值?

<span class="personcart">0</span> 

我已經寫一個jquery 1添加到存儲在跨度element.When我上的按鈕,這是數span類包含class addtocartbt。我將span類元素中的零值加入到personcart類中,並將1作爲span元素的內容與類personcart存儲在一起。但是當我再次用類addtocartbt單擊span元素時,它會將值提醒爲11,該值先前存儲在類名爲personcart的span元素中。其實它應該是1只不是11.

var totalsum = parseInt($("span.personcart").text()); 
$("span.addtocartbt").click(function() 
{ 




     alert(totalsum); 
     var intg = 1; 

    if(totalsum == 0){ 



     var totalsum = parseInt(totalsum) + parseInt(intg); 
     //$("span.personcart").html("0"); 
     alert(totalsum); 
     $("span.personcart").html(totalsum); 


     } 
     else{ 
      alert("okkkk!!!"); 
      var totalsum = parseInt($("span.personcart").text()); 
      //$("span.personcart").html("0"); 
      var totalsum = parseInt(totalsum) + parseInt(intg); 
      alert(totalsum); 
      $("span.personcart").html(totalsum); 

     } 

     /*var totalsum = 0; 
     alert(totalsum); 
     var totalsum = parseInt(totalsum) + 1; 
     alert(totalsum);*/ 

}); 

任何人都可以說如何做到這一點?

+0

跨度的地方有'不value' ü se'.text()'得到範圍文本 – guradio

+0

我已經使用.text(),但它顯示11不是1 – anu

+0

該問題不在分配,但在初始化。初始化click事件之外的'var totalsum',這樣它就會加起來。當你點擊它總是重置它的工作值 – guradio

回答

0

var totalsum = parseInt($("span.personcart").text()); 
 
$("span.addtocartbt").click(function() { 
 
    alert(totalsum); 
 
    var intg = 1; 
 
    if (totalsum == 0) { 
 
    totalsum = parseInt(totalsum) + parseInt(intg);//dont initialize 
 
    //$("span.personcart").html("0"); 
 
    alert(totalsum); 
 
    $("span.personcart").html(totalsum); 
 
    } else { 
 
    alert("okkkk!!!"); 
 
    totalsum = parseInt($("span.personcart").text()); 
 
    //$("span.personcart").html("0"); 
 
    totalsum = parseInt(totalsum) + parseInt(intg);//dont initialize 
 
    alert(totalsum); 
 
    $("span.personcart").html(totalsum); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<span class="personcart">0</span> 
 
<span class="addtocartbt">addtocartbt</span>

評論,你重新初始化變量做檢查的評論

1

它的工作已經

$("span.addtocartbt").click(function() 
 
{ 
 

 

 

 
    var totalsum = parseInt($("span.personcart").text()); 
 
     alert(totalsum); 
 
     var intg = 1; 
 

 
    if(totalsum == 0){ 
 

 

 

 
     var totalsum = parseInt(totalsum) + parseInt(intg); 
 
     //$("span.personcart").html("0"); 
 
     alert(totalsum); 
 
     $("span.personcart").html(totalsum); 
 

 

 
     } 
 
     else{ 
 
      alert("okkkk!!!"); 
 
      var totalsum = parseInt($("span.personcart").text()); 
 
      //$("span.personcart").html("0"); 
 
      var totalsum = parseInt(totalsum) + parseInt(intg); 
 
      alert(totalsum); 
 
      $("span.personcart").html(totalsum); 
 

 
     } 
 

 

 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<span class="personcart">0</span> 
 
<span class="addtocartbt">Add To Cart</span>