改变类的html值

时间:2014-07-10 07:18:09

标签: javascript jquery

我要做的是通过jQuery更改特定列的值。我只知道列的名称,但列的位置并不总是相同。

演示:http://jsfiddle.net/4MJjU/

此代码正常运行,但这是检查和更改值的最佳方法吗?

var IDcolumns = document.getElementsByClassName('column-'+positionID); 
  for (i=0;i<IDcolumns.length;i++) 
  { 
      switch(IDcolumns[i].innerHTML){
      case "yes":
            //Just as example: 
            $(IDcolumns[i]).html('<img src="image.png" />');
            break;
      case "no": 
            $(IDcolumns[i]).html('&nbsp;');
            break;
  }
}

jsfiddle(显示/隐藏列)中的其他代码用于其他内容。

2 个答案:

答案 0 :(得分:2)

根据HTML结构,有几种方法可以解决这个问题。

按照你的例子,你可以做一些简单的事情:

$('.column-'+positionID + ':contains("yes")').html('<img src="image.png" />');
$('.column-'+positionID + ':contains("no")').html('&nbsp;');
如果单元格包含文本(忽略空格和其他文本),

:Contains将匹配。

答案 1 :(得分:1)

你可以在这里使用jQuery:

$('.column-'+positionID).each(function{
    var html = $(this).html();
    if(html == "yes")
      $(this).html('<img src="image.png" />');
    else if(html == "no")
      $(this).html('&nbsp;'); 
});