我正在使用Scriptaculous autocompleter實現自動完成文本字段的項目。在Internet Explorer少於10的版本中,系統工作正常,但從版本10以及Firefox或Chrome等其他瀏覽器中,自動完成功能存在缺陷。我已經用原型1.7更新了Scriptaculous 1.9,但沒有任何改變。Scriptaculous Autocompleter將無法在Firefox中工作
<label for="possibleClient">Verfügbare Klienten</label><br>
<input type="text" id="possibleClient" class="fill intellisense"><div id="possibleClientUpdate" class="auto-complete"></div>
<script type="text/javascript" language="javascript" charset="utf-8">
// <![CDATA[
function updateClientList(input,listitem) {
var nodes = document.getElementsByClassName('informal', listitem) || [];
if(nodes.length>0) label = Element.collectTextNodes(nodes[0], listitem);
addToList("chosenClients",input.value,label);
input.value="";
}
var ac = new Ajax.Autocompleter('possibleClient','possibleClientUpdate','/data/clients.php',{paramName: 'search',minChars:1, parameters:'projektIDs=<?php echo $projektID ?>&searchnName=true', select:'selectme', afterUpdateElement: updateClientList});
// ]]>
</script>
我不知道。
[更新]所有快速解答
嗨坦克。我的意思是有缺陷。我正在更新舊系統,以便爲任何瀏覽器做好準備。有缺陷意味着自動完成的工作。如果我在新瀏覽器中沒有任何內容輸入內容。當你激活兼容模式時,它在ie 10中工作。
系統沒有使用json文件。 /data/clients.php返回一個
<ul><li></li></ul>
文本段落。
例如爲:
<ul><li><span class='informal'>Aicher Jasmin</span> (<span class='selectme'>65</span>)</li><li><span class='informal'>Bader Jacqueline Bernice</span> (<span class='selectme'>77</span>)</li><li><span class='informal'>Freisslich Claudia</span> (<span class='selectme'>78</span>)</li><li><span class='informal'>Goller Sascha</span> (<span class='selectme'>64</span>)</li><li><span class='informal'>Hebein Ilse</span> (<span class='selectme'>75</span>)</li><li><span class='informal'>Hohenwarter Berndt</span> (<span class='selectme'>60</span>)</li><li><span class='informal'>Kanz Bernhard</span> (<span class='selectme'>69</span>)</li><li><span class='informal'>Kohlmaier Angelika</span> (<span class='selectme'>68</span>)</li><li><span class='informal'>Konic Isabella</span> (<span class='selectme'>71</span>)</li><li><span class='informal'>Kosche Karl-Heinz</span> (<span class='selectme'>63</span>)</li><li><span class='informal'>Kreilitsch Jutta</span> (<span class='selectme'>70</span>)</li><li><span class='informal'>Kribitsch Bernhard</span> (<span class='selectme'>61</span>)</li><li><span class='informal'>Lackner Ermelinde</span> (<span class='selectme'>79</span>)</li><li><span class='informal'>Mösslacher Wolfgang</span> (<span class='selectme'>67</span>)</li><li><span class='informal'>Müller Hans</span> (<span class='selectme'>54</span>)</li></ul>
我也並不認爲該數據源的問題,因爲它正常工作與舊的瀏覽器。
如果我開始在Firefox開發人員控制檯,並鍵入的東西:
我看到該程序被調用並使得腳本是從歌廳中的數據[:35:07 47.367] POST https://myserver.at/data/clients.php [HTTP/1.1 200 OK 45ms]
但我沒有看到自動填充建議的下拉div。 這可能是一個CSS的問題? 下面是自動完成的CSS文件:
div.auto-complete {
position:absolute;
width:250px;
background-color:white;
border:1px solid #888;
margin:1px 1px 0 1px;
padding:0px;
}
div.auto-complete ul {
list-style-type: none;
margin:0px;
padding:0px;
}
div.auto-complete ul li.selected { background-color: #ffb;}
div.auto-complete ul li {
list-style-type: none;
display:block;
margin:0;
padding:2px;
height:22px;
cursor:pointer;
}
不知道你做錯了什麼,但我認爲這不是瀏覽器http://www.ajaxdaddy.com/scriptaculous-autocomplete.html在Firefox中適合我。 – HMR 2013-05-14 09:41:06
您需要更具體地瞭解「有缺陷」的含義。它不工作,或以意想不到的方式工作?您可以嘗試的一件事是打開Chrome的Web Developer Toolbar(按F12),並查看控制檯選項卡中是否有任何錯誤消息。您可以在IE10(按F12)和Firefox(我不確定熱鍵,右鍵單擊頁面上的任意位置並單擊檢查元素...)中執行相同的操作。 – 2013-05-14 09:42:14
'/ data/clients.php'返回什麼?並在什麼Content-Type下?另外,試試Prototype 1.7.1 – TotalWipeOut 2013-05-14 12:50:05