我試圖在加載器圖標和以html爲數據的成功之間添加一個小延遲(2秒)。在ajax調用中設置延遲
我試過使用的是setTimeout並放入一個延遲號。這不起作用,所以我希望你能告訴我什麼是正確的方法。
我的Ajax代碼:
<script type="text/javascript">
$(function() {
var delay = 2000;
var res = {
loader: $("<div />", { class: "loader" })
};
$('#search').on('click', function() {
$.ajax({
type: 'GET',
url: "@Url.Action("Find", "Hotel")",
datatype: "html",
beforeSend: function() {
$("#group-panel-ajax").append(res.loader);
setTimeout(delay);
},
success: function (data) {
$("#group-panel-ajax").find(res.loader).remove();
$('#group-panel-ajax').html($(data).find("#group-panel-ajax"));
}
});
return false;
});
});
</script>
現在它運行非常快。希望有人能幫忙。
那不是如何'setTimeout'作品。您是否閱讀過[documentation](https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setTimeout)? – j08691
你在哪裏看過'setTimeout'被用作'setTimeout(delay)'?我會找到更好的源代碼/教程/文檔。 –
你究竟想要推遲什麼?發送請求之前你想要延遲嗎?或者在收到答覆之後並在顯示結果之前想要延遲? –