2013-09-20 3 views
1

Учитывая этот HTML разметкипереборе с каждым и содержит в JQuery

   <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 является родительским FIELDSET элемент таблицы. Где я здесь не так, и есть лучший способ выразить то, что я пытаюсь сделать здесь.

ответ

2

Я думаю, что вы ориентируетесь являются span элементы с классом lblEBSavings, в том случае, когда нет необходимости использовать .each()

$('.labelValueCalc[id^="lblEBSavings"]').text("$" + ebSavingsQtrly.toString()) 
+0

no есть десятки других меток с тем же классом , эти четыре могут быть идентифицированы только подмножеством их идентификаторов, которые я использую в файлах, которые я теперь вижу в качестве виновника, поскольку инструменты разработчика говорят, что в этом контексте не существует метода. Как я могу отфильтровать теги span, которые имеют только это подмножество текста, содержащегося в .contains? – dinotom

+0

@dinotom см. Обновление –

0

Попробуйте использовать каждую функцию следующим образом:

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

Вы должны также попытаться console.log($("#fld_ROICalcOutput > span").contains("lblEBSavings"));, чтобы убедиться, что селектор работ.

+0

Dark, который не работает либо и инструменты разработчика говорят, что не существует метода .contains, который является виновником. Любое другое решение о том, как отфильтровать эти четыре метки по тексту подмножества их идентификаторов? – dinotom

+0

@ dinotom Ах, вы должны добавить это в свой первоначальный вопрос. Вы можете использовать следующий ответ http://stackoverflow.com/a/3480785/2539335 о '$ (" # fld_ROICalcOutput> span "). Attr (" id ")' –

0

Как насчет:

$("#fld_ROICalcOutput[id^=lblEBSavings]").each(function() { 
    $(this).text("$" + ebSavingsQtrly.toString()); 
} 
+0

Похоже, что он должен работать, но он не – dinotom

+0

попробовал это, но все еще не работает – dinotom

+0

$ .each ($ ("# fld_ROICalcOutput [id^= lblLubeOilSavings]> span"), function() { $ (this) .text ("$" + loSavingsQtrly.toString()); }); – dinotom

Смежные вопросы