我的最终答案见最后一次编辑。我将剩下的部分放在这里,以展示提出一个好问题的重要性,并展示what was tried,输入是什么样子的,以及预期的输出应该是什么。那样可以节省很多时间。在
使用jQuery,您可以迭代每个表单元格,检查值并更改它的输出。我更喜欢这样,而不是改变实际数据。最好保持数据的完整性,只改变它在这里的显示方式。在$("#test td").each(function() {
if ($(this).html() == "0") {
$(this).html("");
}
});
你可以在here中看到它。在
更新:
如果只需要更改一些
,我建议为这些更改使用一个类。在^{pr2}$
它与HTML一起工作,如下所示:
10 | 5 | 0 | 1 |
11 | 0 | 9 | 7 |
更新2:
如果数据不是原子的,并且单元格中有多个值,如下所示:
10 0 foobar 0 | 5 | 0, 0, 0 | 1 |
然后您需要将Javascript改为使用正则表达式。\b表示单词边界。但是,它不能处理像0.5这样的小数。在$(".noZeroAllowed").each(function() {
var newStr = $(this).html().replace(/\b0\b/g, "");
$(this).html(newStr);
});
更新3:
这将把相关类中的标记中的所有零变成空字符串,但最后一个零保持不变。在$(".noZeroAllowed").each(function() {
var zeros = new Array;
var b = $(this).find("b");
for (var i = 0; i < b.length; i++) {
$(b[i])
if ($(b[i]).html() == "0") {
zeros.push(b[i]);
}
}
for (var i = 0; i < zeros.length - 1; i++) {
$(zeros[i]).html("");
}
});
看到了here。在