我已经发布了一个关于它的问题,但我已经弄清楚确切的问题是什么。现在,我需要一个解决方案:)
这是我的代码:
$('input[type="text"][name="appLink"]').unbind('keyup').unbind('ajax').keyup(function() {
var iTunesURL = $(this).val();
var iTunesAppID = $('input[name="iTunesAppID"]').val();
$.ajax({
type: 'POST',
url: jsonURL,
dataType: 'json',
cache: false,
timeout: 20000,
data: { a: 'checkiTunesURL', iTunesURL: iTunesURL, iTunesAppID: iTunesAppID },
success: function(data) {
if (!data.error) {
$('section.submit').fadeOut('slow');
//Modifying Submit Page
setTimeout(function() {
$('input[name="appLink"]').val(data.trackViewUrl);
$('div.appimage > img').attr('src', data.artworkUrl512).attr('alt', data.trackName);
$('div.title > p:nth-child(1)').html(data.trackName);
$('div.title > p:nth-child(2)').html('by '+data.sellerName);
$('span.mod-category').html(data.primaryGenreName);
$('span.mod-size').html(data.fileSizeBytes);
$('span.mod-update').html(data.lastUpdate);
$('select[name="version"]').html(data.verSelect);
$('input[name="iTunesAppID"]').attr('value', data.trackId);
}, 600);
//Showing Submit Page
$('section.submit').delay('600').fadeIn('slow');
} else {
$('.json-response').html(data.message).fadeIn('slow');
}
},
error: function(jqXHR, textStatus, errorThrown) {
//$('.json-response').html('Probléma történt! Kérlek próbáld újra később! (HTTP Error: '+errorThrown+' | Error Message: '+textStatus+')').fadeIn('slow');
$('.json-response').html('Something went wrong! Please check your network connection!').fadeIn('slow');
}
});
});
问题与解释:
每次触发一个键时,它都会加载这个 ajax。如果我的 JSON 文件找到 keyword
,它会返回 error = false
标志。你看,如果发生这种情况,它会加载效果、更改等...
问题是,当您开始输入时,例如 asdasdasd
之后我粘贴/写入 keyword
会有一些 ajax 查询哪些是还在处理中。这些正在修改和加载 fadeOut-In 效果 X 次。
所以我需要一个解决方案来停止处理 ajax 请求,同时按下另一个键!
提前致谢, 马赛尔
最佳答案
我个人会让脚本等待,这样它就不会在每次键入时都触发。实际上我可能会使用 http://jqueryui.com/autocomplete/
但是您可以在重试之前中止 ajax。
...
var iTunesAppID = $('input[name="iTunesAppID"]').val();
if (typeof req!='undefined' && req!=null) req.abort();
req = $.ajax({
...
关于php - jQuery AJAX 调用两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14798519/