2016-01-29 2 views
-2

Я новичок в JQuery, функция ниже работает отлично, когда я жестко кодирую «значение» в URL-адрес ajax. Однако, когда я использую значение var ', вызов ajax терпит неудачу. «Значение» не выполняет функцию. Тем не менее он находится в глобальном масштабе. Итак, почему значение не работает? Я пробовал и без кавычек.Почему моя функция ajax не видит переменную

Большое спасибо!

$(document).ready(function() { 

$(".product_id").blur(function() { 

    var value = $(".product_id").val() 

    $.ajax({ 
     type: 'GET', 
     url: 'product_prices/' + 'value' , 
     success: function (data) { 
      console.log('success', data) 
     } 


    }); 

}); 
}); 
+0

URL: 'product_prices /' + 'значение', вы добавляете строку 'значение' а не значение переменного , Удалите котировки – l46kok

+1

, это должно быть без кавычек. вы уверены, что у вас есть правильное значение? попробуйте оповещение (значение) или console.log (значение) для проверки. – jvilhena

+0

Вы должны работать над развитием способности видеть тривиальные ошибки. Довольно очевидно, что вы добавили слово «значение» вместо фактического значения. –

ответ

0

со следующим утверждением:

url: 'product_prices/' + 'value' , 

вы в настоящее время применение в URL вида product_prices/value, в то время как вы хотите что-то вроде product_prices/nnn, где «NNN» является текущее значение.

Меняет заявление в:

url: 'product_prices/' + value , 
+0

Спасибо! Оно работает ! Я вручу вам этот момент, потому что вы получили его первым, плюс вы дали мне несколько пояснений. – Vince

+0

Добро пожаловать! – cFreed

2

Это должно работать нормально

$(document).ready(function() { 

$(".product_id").blur(function() { 

    var value = $(".product_id").val() 

    $.ajax({ 
     type: 'GET', 
     url: "product_prices/" + value , 
     success: function (data) { 
      console.log('success', data) 
     } 


    }); 

}); 
}); 
+0

Большое спасибо - теперь это работает! – Vince

Смежные вопросы