javascript - 如何检查json格式的数据是否存在?

标签 javascript jquery json

我有一个静态数据 json 对象。当我在搜索框中输入相应的滚动键(例如 101)并按下按钮时,就会出现值。

如果我输入了错误的滚动键,则错误的滚动键应该显示在警报中。否则应该出现相应的值。

正确的卷号为 101, 102, 103, 104 。 显示数据没问题,但是错误滚动没有警报怎么办。

我的代码是

$(document).ready(function(){
	

    
    var rollno = {
    "101": [ {"name": "rohit", "rollNo": "1", "fname":"nro"}],
    "102": [ {"name": "azadrohit", "rollNo": "2" , "fname":"nrodf"}],
    "103": [ {"name": "rohitmalik", "rollNo": "3", "fname":"nrowexs"}],
    "104": [ {"name": "azdm", "rollNo": "4" , "fname":"nrosjyed"}]
    };
    
    
    $('#showD').on('click', function(){
    	var rollnoINput = $('#searchDetails').val();
        var updateName = rollno[rollnoINput][0].name;
        var updateRollNo = rollno[rollnoINput][0].rollNo;
        var updateFname = rollno[rollnoINput][0].fname;
        
        
        $('#rollNo').html(updateRollNo);
    	$('#cname').html(updateName);
    	$('#fname').html(updateFname);
        
    });
    
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<input type="text" value="" id="searchDetails" />

<button id="showD">Click  to result</button>

<div id="rollNo"></div>
<div id="cname"></div>
<div id="fname"></div>

最佳答案

您可以使用hasOwnProperty检查对象属性是否存在:

$('#showD').on('click', function(){
    var rollnoINput = $('#searchDetails').val();

    if (rollno.hasOwnProperty(rollnoINput)) {
        var updateName = rollno[rollnoINput][0].name;
        var updateRollNo = rollno[rollnoINput][0].rollNo;
        var updateFname = rollno[rollnoINput][0].fname;

        $('#rollNo').html(updateRollNo);
        $('#cname').html(updateName);
        $('#fname').html(updateFname);

   } else {
     alert('Property not found');
   }

});

关于javascript - 如何检查json格式的数据是否存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32739519/

相关文章:

javascript - 如何使用 localstorage 将列表中的所有复选框 bool 值存储到数组中?

jQuery 获取文本作为数字

php - Json 和 GraphQL 变量期望字符串是哈希

java - JsonIdentityInfo 用于 hibernate 映射

javascript - 找到一个返回值作为变量

javascript - 如何让导航栏出现在滚动条上?

javascript - 从长度为 6 的数组中返回 3 个组合的所有组合且该数字不与同一组数字出现的算法

javascript - jQuery Ajax 网格

javascript - jQuery - 将通知标记为已读

javascript - 使用纯 json 输入时通过数据表获取 rowid 值