Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在if语句中使用数组数据_Javascript_Jquery - Fatal编程技术网

Javascript 在if语句中使用数组数据

Javascript 在if语句中使用数组数据,javascript,jquery,Javascript,Jquery,我试图建立一个简单的项目,但我偶然发现了一个问题。我有一个如下所示的数组: var myArray=[ { 电话:23, 姓名:珍妮, 提交编号:39, 照片:珍妮, }, { 编号:3, 姓名:肯尼, 提交编号:0, 照片:photoKenny, }, ] 如果SubmissionNumber等于0,我想使用if语句向某个div元素添加/删除一个类,但我不知道如何做到这一点。我试过使用这个,但不起作用: 如果$myArray[i].Submissio

我试图建立一个简单的项目,但我偶然发现了一个问题。我有一个如下所示的数组:

var myArray=[ { 电话:23, 姓名:珍妮, 提交编号:39, 照片:珍妮, }, { 编号:3, 姓名:肯尼, 提交编号:0, 照片:photoKenny, }, ] 如果SubmissionNumber等于0,我想使用if语句向某个div元素添加/删除一个类,但我不知道如何做到这一点。我试过使用这个,但不起作用:

如果$myArray[i].SubmissionNumber==0{ $'submissionNumber'。删除类'submissionReceived'; }
因为您使用了$myArray[i]。SubmissionNumber==0。但是$表示jQuery关键字,用于选择元素。SubmissionNumber是字符串。您应该将字符串更改为int,并将其与0进行比较。因此,我使用了parseInt javascript函数并将字符串转换为整数:

if (parseInt(myArray[i].SubmissionNumber) == 0)) {
  $('#submissionNumber').removeClass('submissionReceived');
}
我更改了displayitems功能

function dislayItems(){

    for(var i=0; i<myArray.length; i++){
    
        var items = $(`<section class="items">
    
    <figure>
     <div id="submissionRec${i}" class="received">
     <i class="rec_eived">received</i>
     </div>
        <img src="imgs/`+ myArray[i].photo +`.jpg" alt="" class="rounded"/>
       <figcaption>
       <p class=name>`+ myArray[i].Name +`</p>
            <p>`+ myArray[i].Number +`</p>
            <p>`+ myArray[i].SubmissionNumber +`</p>
        </figcaption>
    </figure>
    `);
    $('main').append(items);

    if( parseInt(myArray[i]["SubmissionNumber"]) == 0 ) {
    
        $('#submissionRec' + i).removeClass('received');
    
        }
    }
}

以下是访问该Javascript字段值的方式:

myArray[i]["SubmissionNumber"]

结果如下:

编辑:是的,myArray[i]。SubmissionNumber当然也可以。 关键问题是条件部分周围的jQuery$

上面的字符串方法确实带来了一些好处——使用变量的能力。但无论哪种方法都有效


关于HTML标记的命名,他必须将ID/NAME属性设置为SubmissionNumber。

美元是什么$myArray[i]……请附上您的html文件,以便为我们提供帮助。您不需要使用$。只需使用if myArray[i].SubmissionNumber==0{请向我们显示html标记,并告诉我们您正在尝试修改哪个div。我将添加它作为新答案,因为它对于注释来说太长了,因为您使用了$myArray[i].SubmissionNumber==0。但是$表示jQuery关键字,用于选择元素。当前。SubmissionNumber为字符串。我应该将字符串更改为int,并将其与0进行比较。因此,我使用了parseInt javascript函数,并将字符串转换为整数。即使我删除了$符号并使用建议的代码,感谢您的帮助,该类仍然是未从div元素中删除。该类已从数组中删除所有元素,但第一个元素除外,而且它甚至不应该被删除,因为数组中的值不等于0,而是39。我将添加它作为新答案,因为它对于注释来说太长了。我更改了displayItems函数。请检查它。${I}表示submissionRec+i。因为id应该是唯一的。如果HTML内容具有相同的id,则会发出警告,并且html5验证失败。因此,我想使用索引i.No.设置唯一id。与myArray[0]没有区别。SubmissionNumber..但方法有效表示两种方法都有效