| 
 проблема с JSON объектом в AJAX запросе 
function choose(id){
        $("#data").html('');
        $.ajax({
            type: "POST",
            url: "/ajax/"+id.substring(0, id.lastIndexOf('_')),
            cache: false,
            data: "q="+$("#"+id+"_title").val(),
            dataType: 'json',
            timeout: 10000,
            error: function() {$("#data").append('');},
            success: function(data){
                if (data.a !== undefined) {
                    $.each(data.a, function(i, obj) {                        
                            $("#data").append('<div>'+obj.info+'</div>');
                    });
                }
                else if (data.b[0] !== undefined) {
                    $.each(data.b, function(i, obj) {
                        $("#data").append('<div><b>'+obj.title+'</b></br><font color="#a0a0a0">'+obj.info+'</font></div>');
                    });
                }
                $("#data").show();
                $("#data div").click(function(){                    
                    var i = $("#data div").index(this);
                    insert(i,id,data);                        
                }); 
                var i = 0; 
                $("input:text").keypress(function(e){
                    id = $(this).next().attr('id');
                    if (e.keyCode == '13') {
                        if ($("#data").html() !== '') {
                            if ($("#data").children().get(0).tagName == "DIV")
                                insert(i,id,data);
                            else {
                                $("#data center").remove();
                                $("#data").hide();
                                $("#"+id+"_title").focus();
                                clear(id);
                            }                           
                        } 
                        return false;
                    }                   
                });
            }
        });
        return false;
    }
проблема в том, что после первого запроса данные data кэшируются. а хотя запрос всегда приходит новый, в функции выбора применяются старые данные. в чем может быть суть проблемы? | 
| 
 я обычно даже не думая уже к урлу добавляю рандомное число, не пробовал? | 
| 
 да, какого вида url ?  Я вообще всегда к php обработчику отправляю запросы, никаких проблем не встречал. | 
| 
 url, как вы видите, содержит переменную. сервер обрабатывает запрос в зависимости от этой переменной. в ней содержится имя базы, из который сервер должен достать соответствующие значения. так что random отпадает :(  от PHP я отказался согласно требованию заказчика. ps.причем эта проблема имеет место только в случае события keydown. если совершать выбор по событию click - все функционирует должным образом. возможно дело в переменных, передаваемых функциям. но только как это проверить... | 
| 
 Цитата: 
 
url: "/ajax/"+id.substring(0, id.lastIndexOf('_')),
поменяй на 
url: "/ajax/"+id.substring(0, id.lastIndexOf('_'))+"?r="+Math.random(),
Цитата: 
 | 
| 
 post-запросы не кэшируются, к ним не обязательно случайный параметр добавлять | 
| 
 решил проблему с помощью глобальной переменной, в которую запихиваю JSON данные, полученные по запросу. | 
| Часовой пояс GMT +3, время: 19:38. |