@KRHD

Как узнать есть ли в json ответе определённая переменная или нет без ошибок js?

Вообщем, есть скрипт
$('form').submit(function(e){
				e.preventDefault();
				$form = $(this);
				$form.find('.notice').html('');
				$button = $form.find('button');
				$button.addClass('loading');
				$action = $form.attr('action');
				$.ajax({
					'url': $action,
					'type': "POST", 
					'dataType': "json", 
					'data': $form.serialize(), 
					'success': function(json) {
                                                  if(json.addons.redirect != null){
                                                   alert('yes');
                                                   }
						$button.removeClass('loading');
						$form.find('.notice').html('<div class='+json.response+'>'+json.msg+'</div>');
					}
				});
			});

Ответ формирует данный php код
function ResponseCreate($response, $msg, $data){ 
		$datas = array(
			"response" => $response,
			"msg" => $msg,
			"addons" => $data,
		);
		
		$data_string = json_encode($datas);  
		exit($data_string);	
	}

И получается в ответеб может быть redirect , а может и не быть, и как это проверить без ошибок js, а то js останавливается , когда не видит эту переменную
  • Вопрос задан
  • 308 просмотров
Решения вопроса 2
@Bhudh
Оберните проверку redirect в try|catch и в блоке catch уже решайте, как быть.
Только уточните, в каком формате у вас json. Вернее, какого типа.
Ответ написан
Krasnodar_etc
@Krasnodar_etc
fundraiseup
if( json.addons && json.addons.redirect ) {
// точно есть
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы