Javascript 如果字符串编号仅为0,则隐藏另一个元素

Javascript 如果字符串编号仅为0,则隐藏另一个元素,javascript,jquery,Javascript,Jquery,因此,如果字符串包含单个0,我将尝试隐藏第二个元素。元素应显示数字是否为其他值:10 100 11等。它还需要一个.each函数,因为在doom中有几个元素具有此变量 到目前为止尝试的脚本: if ( parseInt( $('.incomingStock').html() ) > -1) $('deliverydate').css({'display':'none'}) HTML 0 i Inkomande淡啤酒 LevernsDatum:2017.03.17 0 i Inkoman

因此,如果字符串包含单个
0
,我将尝试隐藏第二个元素。元素应显示数字是否为其他值:
10 100 11
等。它还需要一个.each函数,因为在doom中有几个元素具有此变量

到目前为止尝试的脚本:

if ( parseInt( $('.incomingStock').html() ) > -1) $('deliverydate').css({'display':'none'})
HTML


0 i Inkomande淡啤酒
LevernsDatum:2017.03.17
0 i Inkomande淡啤酒
LevernsDatum:2017.03.17

下面的代码可能会帮助您,
在这里,我阅读ID=incomingStock的所有元素,然后根据您的条件处理进一步的更改

$("[id^='incomingStock']").each(function() {
        id = this.id;
        val = ($('#'+id)).val();

        if(val > -1) {
            $('deliverydate').css({'display':'none'})
        }
});

如果您可以显示希望使用此代码的粗略开发页面,这将对您有所帮助。

您忘记向选择器$('deliverydate')添加点,它必须是这样-$('deliverydate'),因为它是CSS类。若数字大于-1,为什么要隐藏元素

所以你的代码可能是这样的

(函数($){
var检测器=parseInt($('.incomingStock').text(),10);
var showElement=$('.deliverydate');
showElement.hide();
如果(探测器>-1){
showElement.show();
}
}(jQuery))

0 i Inkomande淡啤酒
LevernsDatum:2017.03.17
LevernsDatum:2017.03.18

Leveransdatum:2017.03.19
您可以使用
split
从字符串创建数组。然后检查该数组中
0
的索引并可以相应地执行操作

var getText = $('.incomingStock').text().split(' '); // will create an array
if (getText.indexOf('0') >= 0){  // check if 0 is present or not
 $('.deliverydate').css({'display':'none'}) // add styles

}

将介绍如何在元素文本中查找数字。我想说明如何进行循环并隐藏下一个元素,如问题中所述

此外,我还想展示如何以不同的方式进行数字检测。我正在使用一个正则表达式,它使用一个特殊字符检查数字0是否作为它自己的单词存在

$('.incomingStock')。每个(函数(){
var incomingStock=$(本);
if(incomingStock.text().match(/\b0\b/)!==null){
incomingStock.next('.deliverydate').hide();
}
});

0 i Inkomande淡啤酒
LevernsDatum:2017.03.17
0 i Inkomande淡啤酒
LevernsDatum:2017.03.17
1 i Inkomande淡啤酒
LevernsDatum:2017.03.17
0 i Inkomande淡啤酒
LevernsDatum:2017.03.17

嗨!我没有活动页面,但元素在DOM中设置,如图所示,包装在父容器中。我不能从类更改为id(可能是重复id)。您是否有多个“块”带有
.incomingStock
元素,后跟
.deliverydate
元素?更新了问题@justastudent为您提供了另一个答案,回答了问题的循环部分。
var getText = $('.incomingStock').text().split(' '); // will create an array
if (getText.indexOf('0') >= 0){  // check if 0 is present or not
 $('.deliverydate').css({'display':'none'}) // add styles

}