Javascript 基于文本输入中的值隐藏表行
我在这个网站上找到了一个javascript示例,它基于直接读取行中单元格中的值来隐藏行,但我需要它来读取文本输入字段中的值 下面是我正在使用的javascript:Javascript 基于文本输入中的值隐藏表行,javascript,Javascript,我在这个网站上找到了一个javascript示例,它基于直接读取行中单元格中的值来隐藏行,但我需要它来读取文本输入字段中的值 下面是我正在使用的javascript: function hide() { var tbl = document.getElementById('Table'), rows = tbl.tBodies[0].children, l = rows.length, i, filter = function(cells) { var valu
function hide() {
var tbl = document.getElementById('Table'),
rows = tbl.tBodies[0].children, l = rows.length, i,
filter = function(cells) {
var values = [
parseInt(cells[0].firstChild.nodeValue.replace(/,/g,''),10),
parseFloat(cells[1].firstChild.nodeValue.replace(/,/g,''))
];
if( values[1] < 1) return false;
return true;
};
for( i=0; i<l; i++) {
if( !filter(rows[i].cells)) rows[i].style.display = "none";
}
}
函数隐藏(){
var tbl=document.getElementById('Table'),
rows=tbl.tBodies[0]。子项,l=rows.length,i,
过滤器=函数(单元格){
var值=[
parseInt(单元格[0].firstChild.nodeValue.replace(/,/g',),10),
parseFloat(单元格[1].firstChild.nodeValue.replace(/,/g,,))
];
if(值[1]<1)返回false;
返回true;
};
对于(i=0;i只需更改一行:
parseFloat(cells[1].firstChild.nodeValue.replace(/,/g,''))
变成
parseFloat(cells[1].firstElementChild.value.replace(/,/g,''))
如果您设置了一个,那么就更容易看到您正在尝试做什么。这是一个JSFIDLE——在本例中,单击“隐藏”按钮将隐藏第5行,因为它在表格单元格中直接有一个“0”。但是我希望javascript读取文本字段中的“0”,并隐藏第3、4和5行。[链接]完美!谢谢,bmceldowney。
parseFloat(cells[1].firstElementChild.value.replace(/,/g,''))