2013-05-19 81 views

回答

0

我猜打開下面的鏈接,保留,你的意思是在搜索欄中顯示爲您鍵入,或建議?那麼,這可能是因爲,舊版本的IE 6,7不支持Ajax XMLHttpRequest()對象,因此...您必須更改您的ajax代碼,即少於一行,以檢查IE瀏覽器的window.ActiveXObject 。通過做

if(window.XMLHttpRequest){ 
     xmlhttp = new XMLHttpRequest(); } 
     else if(window.ActiveXObject) { 
       xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } 
     else { 
      alert('Please update your browse, to see Ajax in Action :) '); 
    } 
+0

奇怪。他似乎引用了jQuery庫,爲什麼不把它用於Ajax請求呢? :( – jammykam

+0

'1'我是jQuery noob和'2'我喜歡人(我自己)實際上依靠Js和Ajax,然後才能跳到框架作品 – 2013-05-19 00:39:22

+0

好吧,這很公平,並且不會不同意,太多人們不這樣做,所以我爲此讚揚你。對於生產系統,儘管你已經在使用它,但我會採用jQuery的方式。 – jammykam

1

的錯誤是由於你的addLoadEvent()功能,調用只是fillSearchBox()從IE開發控制檯正確觸發該功能,並使用該查詢輸入框。

特別的,錯誤的是在此呼籲:addLoadEvent(fillSearchBox);

我嘗試使用updated suggestionjsFiddle的addLoadEvent功能沒有任何成功。

由於您只是在代碼的更深處使用jQuery,您可以改爲使用它。在樣品jsFiddle

jQuery(document).ready(function() { 
    fillSearchBox() 
}); 

順便說一句,你有input.result一個錯字,這就是爲什麼當你選擇一個建議的搜索不會自動提交:

input 
    .attr ("autocomplete", "off") 
    .autocomplete ("http://clients1.google.com/complete/search", options) 
    .result (function() { searchform.submit(); }); //<== typo in this line, should be submit 

你真的應該將你的所有內嵌代碼對於外部文件,您需要在每次加載頁面時下載頁面中的很多內聯JavaScript和CSS。

相關問題