这篇文章是使用vuejs获取数组,其中一个数组里面包含全部的数值,另一个数组只有一部分数值,要做的就是第二个数组去匹配第一个数组,匹配相同的情况下,给这个相同的数值打上钩,如下图


项目地址:https://github.com/fengliting/vue-array,后续代码解说就不会全部都打上


html是遍历全部的数组

<li v-for="item in arr1" >
<div class="checkbox">
<label>
<!--value存在于v-model里面的话,checkbox会自动勾选-->
<input class="chk_1" type="checkbox" @click="choseitem($event.target.value)" v-model="indexs" :value="item.id">
{{item.value}}
</label>
</div>
</li>

js代码
//全部
var list1 = [{value:'Mary',id:1},{value:'Away',id:2},{value:'Ali',id:3},...]
//只存在一部分的数组

var list2 = [{value:'Mary',id:1},{value:'Away',id:2},{value:'Neinei',id:8},...]

//获取第二个数组里面的对象

getarrayitem:function(){

this.indexs = this.list2.map(function(json){

return json.id

})

}

//选中的值判断是否在第二个数组中

choseitem:function(inputid){

//this.isArr是判断某一个值是否在数组中,可以用原生js实现,也可以使用jquery实现,这里就不贴这个代码了

if(this.isArr(inputid,this.indexs){

console.log("存在第二个数组内")

})

console.log("不存在第二个数组中")

}


Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐