Я объявляю глобальный вар в верхней части сценария, как следоватьКак получить переменную jquery из другой функции?
$(function(){
//Set button disabled
var macaddr_obj;});
Я в функцию Ajax, как следовать
$('.item-macaddr').live('keyup', function(){
var vNode = $(this);
var target = $(vNode).parents('tr');
var macAddr = $(target).find('.item-macaddr').val();
$.ajax({
type: 'POST',
url: '" . Yii::app()->createUrl('workorders/check_mac_addr') . "&macAddr=' + macAddr,
success: function (data) {
macaddr_obj = JSON.parse(data);
if(macaddr_obj.check == 'true')
{
$(target).find('.mac-duplicate-error').text(macaddr_obj.msg);
$(target).find('.mac-duplicate-error').addClass('errorMessage');
$('#sites-form input[type=submit]').attr('disabled', 'disabled');
}else {
$(target).find('.mac-duplicate-error').text('');
}
},
});
});
когда KeyUp на другом текстовом поле, вызовите функцию „check_item_row“
$('.item-ipaddr').live('keyup', function(){
var vNode = $(this);
var target = $(vNode).parents('tr');
check_item_row(target);
});
Это функция использовать macaddr_obj
var check_item_row = function(target)
{
alert(macaddr_obj.check);
}
Я хочу использовать значение macaddr_obj. Как я могу сделать?
'macaddr_obj' не на самом деле глобальный характер. Он локален для вашего обработчика 'ready'. –
'macaddr_obj' является локальным для готового обработчика, в котором он объявлен –
Удалите' var' из декларации 'var macaddr_obj;'. Это дало бы ему глобальную область действия (хотя на практике не всегда можно использовать переменные в глобальном масштабе) – tewathia