Как получить возвращаемое значение из вызова AJAX? [Дубликат]

На этот вопрос уже есть ответ здесь:

Как вернуть ответ от асинхронного вызова? 33 ответа

Я хотел получить значение при вызове ajax с помощью функции. но значение всегда возвращается как неопределенное. возвращаемое значение - только 1 или 0.

вот мой код:

$(function(){ 
   $('#add_product').click(function(){ 
     var i = $('#product_name').val(); 
     param = 'product_name='+i; 
     var value = check_product(param); 
     alert(value); 
     return false; 
   }); 
});

function check_product(param){ 
  $.ajax({ 
    type : 'POST', 
    data : param, 
    url : baseurl+'cart/check_product_name/', 
    success : function(result){ 
      //alert(result); 
      return result; 
    } 
 });
}

Привет, ребята, все еще работаю над получением этой работы. Теперь я получаю значение, показывающее 1 или 0. Что я пытаюсь сделать сейчас, так это то, как я могу это сделать в операторе if. Я хотел что-то подобное. Если val = 0, вернуть true; иначе вернуть ложь. Я не уверен, что ям на правильном пути использования функции AJAX. Но если есть лучший способ показать мне, я буду признателен.

$(function(){ 
       $('#add_product').click(function(){ 
         var i = $('#product_name').val(); 
         param = 'product_name='+i; 
         check_product(param).done(function(value) {
        var val = value; //waits until ajax is completed
         });
         if(val == 0){
            return true;
         } else{
            return false;
         }
       }); 
    });

function check_product(param){ 
  return $.ajax({ 
    type : 'POST', 
    data : param, 
    url : baseurl+'cart/check_product_name/'
 });
}

Ответы на вопрос(2)

Ваш ответ на вопрос