Мое требование: когда пользователь нажимает кнопку до тех пор, пока данные не будут извлечены, отобразите текст «Поиск ...». Я использую функцию JSON для извлечения данных. Но проблема в том, что я могу отображать текст «Поиск ...» при нажатии кнопки только в Firefox, а не в Chrome или IE. Я также попробовал beforeSend, но даже tat работает только в Firefox. Я прочитал, что async = false, вызывает эту проблему, но мне нужен синхронный вызов только для этого.отображение текста при выполнении функции json
<span id="searchWait" > </span>
<script>
function getPromptSearchResults() {
$('#searchWait').html('Searching...');
$.ajax({
async: false,
url: 'Application.aspx/getPromptSearchResults',
data: JSON.stringify({
some parameters
}),
success: function (data) {
$('#searchWait').html('');
something
},
error: function (parameters) {
something
}
});
return something;
}
</script>
Я не вижу, где вы показываете текст поиска. Он всегда скрыт. – Amy
этот стиль был опечаткой. Я исправил это. IE/Chrome/Safari блокирует все запросы в async false, как решить эту проблему. Я прочитал обратные вызовы. Как использовать обратный вызов здесь? – Kamayani
см. Http://stackoverflow.com/questions/9755485/stop-browser-locking-during-synchronous-ajax. Он разрешил мою проблему. – Kamayani