函数附加一个类数组,然后在jQuery中拆分这些类?

时间:2014-02-05 23:20:24

标签: javascript jquery split

我有一个生成的表:

<table>
  <tr>
    <td><input /></td>
    <td><span>30</span></td>
    <td><input /><td>
  </tr>
</table>

这是基本结构。实际上有许多<tr>元素看起来几乎相同。对于每个tr,我需要在某些元素上附加类似a1, b1, c1的类。所以在这个函数之后它应该看起来像:

<table>
  <tr>
    <td><input class="a1" /></td>
    <td><span class="a2">30</span></td>
    <td><input class="a3" /><td>
  </tr>
  <tr>
    <td><input class="b1" /></td>
    <td><span class="b2">30</span></td>
    <td><input class="b3" /><td>
  </tr>
</table>

直到这样的最后一组,每一组都比最后一组增加了一个字母。

之后我将需要进行计算,我将不得不拆分这些类。类似的东西:

$("input").keyup(function(){
  var originalVal = $(this).attr("class");
  //Here I need to split this class to get just the letter (a) or (b) etc
  //Then I will perform the calculations like $(orignalVal + "1") * $(originalVal = "2") etc

我认为这将是我想做的所有事情的最简单方法,即计算a1输入乘以a2 span并将结果插入a3输入,依此类推所有组。我也对其他建议持开放态度。

1 个答案:

答案 0 :(得分:1)

以下内容应该有效:

var chars = "abcdefghijklmnopqrstuvwxyz".split('');

$('table tr').each(function(i) {
    $('td', this).children().addClass(function(j) {
        return chars[i] + ++j;
    });
});

http://jsfiddle.net/4C4gN/