在jQuery中从TD获取innerHTML

时间:2013-04-26 10:37:17

标签: javascript jquery client-side

您好我正在使用Sharepoint 2010页面,其中包含具有以下结构的HTML snipet:

<tr>
  <td></td>
  <td class="ms-vb2"></td>
  <td class="ms-vb2"></td>
  <td class="ms-vb2"></td>
  <td class="ms-vb2"></td>
  <td class="ms-vb2"><nobr><b>Sum= 72</b></nobr></td>
  <td class="ms-vb2"><nobr><b>Sum= 66</b></nobr></td>
</tr>

现在我想从var中的TD标记中获取值72和66,以便我可以在客户端脚本中使用这些值。

TD的“Sum =”部分不应该改变。并且表的ID是由sharepoint随机生成的,所以我也不能对它做任何事情。

请帮忙。

谢谢,

3 个答案:

答案 0 :(得分:1)

$(".ms-vb2 b").each(function(td) {
   var s = td.hmtl().replace("Sum= ", "");
    $("body").append(s);
});

这是the working fiddle

答案 1 :(得分:0)

尝试如下,它会帮助你..

小提琴: http://jsfiddle.net/RYh7U/150/

$('td.ms-vb2').each(function() {    
    var value = $(this).text();
    if(value !="")
     alert(value);
    //If you want to replace the Sum= in Text then try the below code
    $(this).text($(this).text().replace("Sum= ",""));
});

答案 2 :(得分:0)

这是解决方案 - 花时间让我生成相同的......:)

 var arrValue = "";
    $('td.ms-vb2').filter(function (i) {
        if ($(this).html().indexOf('Sum=') > 0) {

            mystring = $(this).html();
            var result = /\d+(?:\.\d+)?/.exec(mystring);
            //console.log(arrValue)
            arrValue = result[0] + "," + arrValue
        }
    });

谢谢