1

鉴于此 html 标记

                <tr>
                    <td class="tdDescCell"><b><i>Product Savings:&nbsp;&nbsp;</i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<asp:Label ID="lblEBSavings_Q1" Text="" cssClass="labelValueCalc" runat="server" ClientIDMode="Static"></asp:Label></i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<asp:Label ID="lblEBSavings_Q2" Text="" cssClass="labelValueCalc" runat="server" ClientIDMode="Static"></asp:Label></i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<asp:Label ID="lblEBSavings_Q3" Text="" cssClass="labelValueCalc" runat="server" ClientIDMode="Static"></asp:Label></i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<asp:Label ID="lblEBSavings_Q4" Text="" cssClass="labelValueCalc" runat="server" ClientIDMode="Static"></asp:Label></i></b></td>
                </tr>

呈现像

                 <tr>
                    <td class="tdDescCell"><b><i>Product Savings:&nbsp;&nbsp;</i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<span id="lblEBSavings_Q1" class="labelValueCalc"></span></i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<span id="lblEBSavings_Q2" class="labelValueCalc"></span></i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<span id="lblEBSavings_Q3" class="labelValueCalc"></span></i></b></td>
                    <td class="tdDescCell"><b><i>&nbsp;&nbsp;<span id="lblEBSavings_Q4" class="labelValueCalc"></span></i></b></td>
                </tr>

我使用下面的 jquery 来设置标签文本,这看起来相当多余和草率。

             $("#lblEBSavings_Q1").text("$" + ebSavingsQtrly.toString());
             $("#lblEBSavings_Q2").text("$" + ebSavingsQtrly.toString());
             $("#lblEBSavings_Q3").text("$" + ebSavingsQtrly.toString());
             $("#lblEBSavings_Q4").text("$" + ebSavingsQtrly.toString());

我尝试使用每个重构并包含如下行,

$("#fld_ROICalcOutput > span").contains("lblEBSavings").each().text("$" + ebSavingsQtrly.toString());

其中#fld_ROICalcOutput 是表的父字段集元素。我在哪里出错了,有没有更好的方法来表达我在这里想要完成的事情。

4

3 回答 3

2

我认为您的目标是span带有 class 的元素lblEBSavings,在这种情况下不需要使用.each()

$('.labelValueCalc[id^="lblEBSavings"]').text("$" + ebSavingsQtrly.toString())
于 2013-09-20T08:31:21.917 回答
0

尝试使用每个功能如下:

$.each($("#fld_ROICalcOutput > span").contains("lblEBSavings"), function(){
   $(this).text("$" + ebSavingsQtrly.toString());
});

您还应该尝试console.log( $("#fld_ROICalcOutput > span").contains("lblEBSavings") );确保选择器正常工作。

于 2013-09-20T08:30:49.447 回答
0

怎么样:

$("#fld_ROICalcOutput[id^=lblEBSavings]").each(function() {
   $(this).text("$" + ebSavingsQtrly.toString());
}
于 2013-09-20T08:37:59.163 回答