Извините, если об этом ответили раньше, но я просматриваю сеть и этот сайт, и я не смог найти ответ...
У меня есть функция javascript, которая вызывает сценарий jim для выполнения различных запросов SQLite DB.
Это функция js:
insertRecord: function(uri, name, img, added)
{
$.post('http://localhost/portal/jim/script.jim', { 'action': 'insert', 'uri': uri, 'name': name, 'img': img, 'added': added });
}
Это код для вставки в script.jim:
insert {
$db query {
insert into favourites(uri, name, img, added) values('%s','%s','%s', '%s')
} $uri $name $img $added
}
Все работает отлично, за исключением того, что тайминги иногда возникают, когда я вставляю, а затем jQuery добавляет html из чтения DB после того, как html был применен.
В любом случае, я тогда думал, что буду использовать $.ajax, но я не уверен, как изменить script.jim, чтобы вернуть корректный отформатированный ответ для $.ajax.
Что нужно будет вернуть, чтобы jQuery знал, что POST или GET были успешными: complete: error: done: и т.д.?
У меня есть сценарий джима у друга, поэтому я не уверен в этом.
Любая помощь будет принята с благодарностью.
Спасибо, mcquaim
Вам действительно не нужно ничего возвращать. Просто убедитесь, что код ответа для вашего jim-скрипта равен 200. Если это ваш обработчик успеха, вызываемый, иначе ваш обработчик ошибок будет вызван.
$.ajax({
type : "POST",
url:"http://localhost/portal/jim/script.jim",
data: { 'action': 'insert', 'uri': uri, 'name': name, 'img': img, 'added': added },
success: function(){
// success handler
},
error : function(){
// error handler
}
});