JSON:如果错误,则显示 div



JSON.parse 工作正常,它显示了我需要的值,但我想在收到错误后显示div。

 var stock= $.parseJSON(stock); //This is Yii

一旦我选择了一个有剩余库存的产品(从我的下拉列表中(,它就会显示"字符串">(我使用 typeof in stock 来获取数据类型(。

 console.log(typeof(stock)); // display "string"

但是一旦我选择了一个没有剩余库存的产品,它就不会显示值,而是在控制台上显示错误。

错误:

Uncaught SyntaxError: Unexpected end of JSON input

我试图提出一个条件,

 //-------------------------------------
  if(typeof(stock) != 'string'){
      $('#stock-'+id+'-alert').show();
  }
  else{
       $('#stock-'+id+'-alert').hide();
  }

 //-------------------------------------
  if(stock == '' || stock == 'undefined' || stock == 0 )
    {
           $('#stock-'+id+'-alert').show();
    }
else{
           $('#stock-'+id+'-alert').hide();

如果产品有剩余库存,它会在控制台上显示一个值。

但是,如果产品没有库存,则会向控制台显示错误,并且不显示分区。

这是我在收到无效的 JSON 或错误后想要显示的 DIV

<div class="alert alert-danger" id="stock-<?=$i?>-alert" role="alert" style=" width:50%; margin:auto; margin-bottom:10px; font-size: 16px;">This Product has no Stocks!</div>

把你的代码放在一个try/catch块中:

try {
  var stock= $.parseJSON(stock);
}
catch(err) {
  console.log(err);
 //show div
}

最新更新