Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.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 如果json文件中不存在名称,如何显示错误?_Javascript_Jquery_Html_Json - Fatal编程技术网

Javascript 如果json文件中不存在名称,如何显示错误?

Javascript 如果json文件中不存在名称,如何显示错误?,javascript,jquery,html,json,Javascript,Jquery,Html,Json,如果json文件中不存在名称,我就一直坚持如何显示错误。我试过if(searchField!=value.name.search(expression))和if(searchField!=value.name),但都不起作用。下面是我试过的代码。请帮忙。谢谢 js代码 $(document).ready(function() { $('.dropbox').css('border', 'none'); $.ajaxSetup({ cache: false }); $('#

如果json文件中不存在名称,我就一直坚持如何显示错误。我试过if(searchField!=value.name.search(expression))和if(searchField!=value.name),但都不起作用。下面是我试过的代码。请帮忙。谢谢

js代码

$(document).ready(function() {
  $('.dropbox').css('border', 'none');
  $.ajaxSetup({
    cache: false
  });
  $('#search').keyup(function() {
    $('#searchResult').html('');
    $('#state').val('');
    var searchField = $('#search').val().trim();
    var expression = new RegExp(searchField, "i");
    console.log(expression);
    $.getJSON('result.json', function(data) {
      $.each(data, function(key, value) {
        if (value.name.search(expression) != -1) {
          $('.dropbox').css('border', '1px solid #EBEDF8');
          $('#searchResult').append('<ul><li><div class="img_c"><img src="' + value.imgURL + '" alt="Profile Pic"></div><div class="content-box"> ' + value.name + '|<span>' + value.city + ', ' + value.state + '</span></div></li></ul>');
        }
        if (searchField === '') {
          $('#searchResult').html('<div class="message">No matches found</div>');

        }
      });
    });
  });
  $('#searchResult').on('click', 'li', function() {
    var click_text = $(this).text().split('|');
    $('.dropbox').css('border', 'none');
    $('#search').val($.trim(click_text[0]));
    $("#searchResult").html('');
  });
});
试着这样做:

var数据=[
{
“id”:1,
“姓名”:“约翰”,
“城市”:“伦敦城”,
“州”:“伦敦”,
“imgURL”:“images/pic.svg”
},
{
“id”:2,
“姓名”:“马修”,
“城市”:“纽约市”,
“州”:“纽约”,
“imgURL”:“images/pic.svg”
},
{
“id”:3,
“姓名”:“杰克逊”,
“城市”:“华盛顿”,
“州”:“DC”,
“imgURL”:“images/pic.svg”
}
];
函数a(){
var searchField=$(“输入”).val();
if(searchField=''){$(“#results”).empty();return;}
var表达式=新的RegExp(searchField,“i”);
console.log(表达式);
$(“#结果”).empty().append(“
    ”); $。每个(数据、函数(键、值){ if((value.name).match(表达式)!=null){ $(“#结果”).append(“
  • ”+value.name+“|“+value.city+”、“+value.state+”
  • ”); }else{$(“#结果”).append('');$(“#结果”).append(
”)} });}

要在没有匹配结果时显示错误,只需使用else子句

    if (value.name.search(expression) != -1) {
      $('.dropbox').css('border', '1px solid #EBEDF8');
      $('#searchResult').append('<ul><li><div class="img_c"><img src="' + value.imgURL + '" alt="Profile Pic"></div><div class="content-box"> ' + value.name + '|<span>' + value.city + ', ' + value.state + '</span></div></li></ul>');
    }else{
       // if no match append error-message
       $('#searchResult').append("<p>No results found </p>");
    }
if(value.name.search(表达式)!=-1){
$('.dropbox').css('border','1px solid#EBEDF8');
$(“#searchResult”).append(“
  • ”+value.name+“|”+value.city+”、“+value.state+”
  • /ul>”); }否则{ //如果没有匹配,则追加错误消息 $(“#searchResult”)。追加(未找到结果“

    ”; }
添加您的
结果.json
&HTML代码在不知道数据的情况下很难提供帮助,只需像这样调试:
console.log(value.name.search)
并检查您自己可能遇到的问题wrong@Rk003我已经更新了我的代码。@johnSmith我试过了,但没有得到任何线索。请帮助修复此问题。谢谢
console.log(“NAME:”+value.NAME+“REGEXP:”+expression+“RESULT:“+value.name.search(expression))
您应该在那里找到一个错误,而且您没有告诉什么不起作用或发生了什么,它总是通过测试?或者它永远不会通过?我正在使用字符串,但无论如何,如果json文件中不存在名称,它不会帮助我找到如何显示错误。您能给我任何提示吗?谢谢
[
 {
     "id":1,
      "name":"John",
      "city":"London City",
      "state":"London",
      "imgURL":"images/pic.svg"

 },
 {
    "id":2,
     "name":"Mathew",
     "city":"New York City",
     "state":"NY",
     "imgURL":"images/pic.svg"

},
{
     "id":3,
      "name":"Jackson",
      "city":"Washington",
      "state":"DC",
      "imgURL":"images/pic.svg"

 }

]
    if (value.name.search(expression) != -1) {
      $('.dropbox').css('border', '1px solid #EBEDF8');
      $('#searchResult').append('<ul><li><div class="img_c"><img src="' + value.imgURL + '" alt="Profile Pic"></div><div class="content-box"> ' + value.name + '|<span>' + value.city + ', ' + value.state + '</span></div></li></ul>');
    }else{
       // if no match append error-message
       $('#searchResult').append("<p>No results found </p>");
    }