2016-08-15 53 views
0

我目前使用這個JavaScript來運行顯示爲asp:標籤的文本框。如何在.aspx中使用JavaScript運行總計asp:標籤頁

$(document).ready(function() { 
    //Iterate through each Textbox and add keyup event handler 
    $(".myTextBox0").each(function() { 
     $(this).keyup(function() { 
      //Initialize total to 0 
      var total = 0; 
      $(".myTextBox0").each(function() { 
       // Sum only if the text entered is number and greater than 0        
       if (!isNaN(this.value) && this.value.length != 0) { total += parseFloat(this.value); } 
      }); 
      //Assign the total to 
      //.toFixed() method will roundoff the final sum to 2 decimal places 
      $('#<%=lblJobTotals0.ClientID %>').html(total.toFixed(2)); 
     }); 
    }); 
}); 

我該如何對所有求和的標籤進行相同的操作,將所有求和標籤的總和累加到另一個標籤?

每個David的建議我試過了,唯一的結果是lblTotalsAll變成了「0」。

$(document).ready(function() { 
    //Iterate through each Labels 
    var total = 0; 
    // all labels to sum have cssClass = .lblTotals 
    $(".lblTotals").each(function() { 
     // add to the total 
      var labelValue = $(this).text(); 
     if (!isNaN(labelValue) && labelValue.length != 0) { 
      total += parseFloat(labelValue); 
     } 

}); 

$('#<%=lblJobTotalsAll.ClientID %>').html(total.toFixed(2)); 

}); 

回答

0

你會用同樣的概念開始:

var total = 0; 
$(".myLabel0").each(function() { 
    // add to the total 
}); 
// do something with the total 

現在,由於一個asp:Label生成<span>而不是<input>,你不能從.value值。相反,你需要從你正在寫入元素的文本中解析它。事情是這樣的:

var labelValue = $(this).text(); 
if (!isNaN(labelValue) && labelValue.length != 0) { 
    total += parseFloat(labelValue); 
} 

結構上基本上你做什麼,你已經爲文本框的值,這樣做,但<span>元素的內容來代替。

+0

感謝@David的幫助。我嘗試了以下但沒有成功。 $(document).ready(function(){ //遍歷每個標籤 var total = 0; //所有標籤都有cssClass = .lblTotals $(「。lblTotals」)。each(function(){ //添加到總 變種labelValue = $(本)的.text();如果 (!isNaN(labelValue)&& labelValue.length = 0){ 總+ = parseFloat(labelValue); } } ); $('#<%= lblJobTotalsAll.ClientID%>')。html(total.toFixed(2)); }); – AhabLives

+0

@AhabLives:評論中的代碼幾乎不可讀。另外,定義「不成功」。它以什麼方式失敗? – David

+0

我已更新原始問題。希望有所幫助。 -謝謝。 – AhabLives