2010-11-24 27 views
5

我有一個自動完成的文本框請求通過用C#編寫的IIS7的IHttphandler。隨機訂購的jQuery自動完成請求C#IHttphandler

但到網絡服務器的請求似乎到達無序。

這裏是日誌我從了IHttpHandler獲得鍵入「圭多林」

406302 2010-11-24 12:33:58,448 [8256] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guidoli RequestTime:24/11/2010 12:33:58(396) 
406418 2010-11-24 12:33:58,564 [8256] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guidolin RequestTime:24/11/2010 12:33:58(507) 
407751 2010-11-24 12:33:59,897 [8256] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:gu RequestTime:24/11/2010 12:33:58(685) 
408008 2010-11-24 12:34:00,154 [8256] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guid RequestTime:24/11/2010 12:34:00(56) 
408167 2010-11-24 12:34:00,313 [8000] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guido RequestTime:24/11/2010 12:34:00(244) 
408562 2010-11-24 12:34:00,708 [5912] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:gui RequestTime:24/11/2010 12:34:00(368) 
408832 2010-11-24 12:34:00,978 [8000] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guidol RequestTime:24/11/2010 12:34:00(946) 

所以很明顯後的一個例子,該請求不按照正確的順序到達。有沒有人已經面對這個問題,或者有人知道解決方法嗎?

下面是自動完成的jQuery代碼:

textBox.autocomplete({ 
    source: textBox.attr("data-handler-url"), 
    select: function (event, ui) { 
    textBox.next("input[type='hidden']").val(ui.item.objectId); 
    textBox.data('selected-value', ui.item.value); 
    } 
}); 
+0

你的jQuery代碼是什麼樣的?你有什麼特別的嗎? – 2010-11-24 13:43:32

回答

0

這是HTTP,通過定義一個無國籍協議。 HTTP中沒有「訂單」的概念;一切都以請求消息開始。您無法以預期或要求請求具有任何種類的邏輯順序的方式編寫您的應用程序;畢竟,選擇發送請求的是客戶端。只有他們到達的物理順序很重要。

在你的例子中,誰說客戶沒有鍵入guidolin,然後將其更改爲gu

要回答你的問題,這個問題沒有解決方法,因爲它是一個非問題。如果可能,請編程您的應用程序,使其不關心這些消息到達的「順序」。