2012-06-19 2 views
1

Я ищу использовать .load() или .get() функции JQuery, чтобы заменить AJAX, у меня есть это:Использование функции .load()

var counter = 0; 
timeInterval(changeStock(counter), 2000); 

function changeStock(number) { 
    $(document).ready(function() { 
    $('#stocks').load('/stock.php?symbol=number') 
    counter++; 
    if (counter == <? php echo $count1; ?>) { 
     counter = 0; 
    } 
    } 

Но ничего не подходит. Есть идеи?? Мой <div id="stocks"> в порядке ..

+3

Что именно вы ожидаете? – fcalderan

+0

@ f-calderan Его идея запаса. Он должен получить данные из файла stock.php в зависимости от параметра, а затем отобразить его. то через две секунды он должен перейти к следующему запасу в массиве на Stock.php. stock.php работает нормально – Niall

+1

Что такое 'timeInterval'? – Neal

ответ

2

Есть несколько некорректных строк в вашем скрипте:

timeInterval(changeStock(counter), 2000); 

должен, вероятно, быть setInterval()

должно быть $('#stocks').load('/stock.php?symbol='+number)

и $(document).ready(function() {}) внутри внутри функция?!?!?!

Попробуйте это:

$(document).ready(function() { 
    var counter = 0; 
    setInterval(function() { 
    $('#stocks').load('/stock.php?symbol=' + counter, function() { 
     counter++; 
     if (counter == <? php echo $count1; ?>) { 
     counter = 0; 
     } 
    }); 
    }, 2000); 
}); 

Это будет выполнять внутреннюю функцию каждые 2000 миллисекунд - функция загрузит URL (проходящий счетчик в качестве параметра), а затем исполняющей функцию обратного вызова - который инкременты и проверяет, равно ли оно $count1.

3

Вы хотите передать number в качестве параметра load, а не строку.

$('#stocks').load('/stock.php?symbol=' + number); 

Кроме того, я предполагаю, что вы хотите обновить свой счетчик в успехе обратного вызова:

$('#stocks').load('/stock.php?symbol=' + number, function() { 
    counter++; 

    if (counter == <? php echo $count1; ?>) { 
     counter = 0; 
    } 
}); 
+0

это не так, потому что если бы это было так, то акции.php ответили бы недопустимым символом запаса. но это ошибка, я принимаю это, но не фактическое – Niall

-1

У вас есть синтаксическая ошибка ";" не указано:

$('#stocks').load('/stock.php?symbol=number') 

jQuery Не показывать ошибки по умолчанию, поэтому кажется, что ничего не происходит.

+1

Это совершенно не связано и неверно. –

+0

';' не требуется в JavaScript – ManseUK

0

Я думаю, вы имеете в виду setInterval где вы написали timeInterval. И вы, вероятно, хотели бы иметь

$('#stocks').load('/stock.php?symbol=' + number); 

также этот файл неразбираемый PHP? из-за <? php echo $count1; ?>, если его .js это, вероятно, нет.

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