関数を使用して 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 を返します。それ以外の場合は false を返します。私は 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/'
});
}