我敢肯定,這是簡單的,但我逼瘋......自動完成,多領域,PHP的MySQL
我有以下自動完成腳本:
<script type="text/javascript" src="/js/jquery-1.2.1.pack.js"></script>
<script type="text/javascript">
function lookup(inputString) {
if(inputString.length == 0) {
// Hide the suggestion box.
$('#suggestions').hide();
} else {
$.post("rpc.php", {queryString: ""+inputString+""}, function(data){
if(data.length >0) {
$('#suggestions').show();
$('#autoSuggestionsList').html(data);
}
});
}
} // lookup
function fill(thisValue) {
$('#inputString').val(thisValue);
setTimeout("$('#suggestions').hide();", 200);
}
function fill2(thisValue) {
$('#inputString2').val(thisValue);
setTimeout("$('#suggestions').hide();", 200);
}
使用以下HTML:
<tr><td><input type="text" size="50" name=line1 value="" id="inputString"
onkeyup="lookup(this.value);" onblur="fill();" /><div class="suggestionsBox"
id="suggestions" style="display: none;"> <div class="suggestionList"
id="autoSuggestionsList">
</div><div></td><td>1<input type="radio" name="rank1" value="1"
<? if ($rank1=="1"){ echo "checked"; } ?> >2
<input type="radio" name="rank1" value="2"
<? if ($rank1=="2"){ echo "checked"; } ?> >3
<input type="radio" name="rank1" value="3"
<? if ($rank1=="3"){ echo "checked"; } ?> >
4<input type="radio" name="rank1" value="4" <? if ($rank1=="4"){ echo "checked"; } ?> >
<tr><td><input type="text" size="50" name=line1 value="" id="inputString2"
onkeyup="lookup(this.value);" onblur="fill2();" />
<div class="suggestionsBox" id="suggestions" style="display: none;">
<img src="upArrow.png" style="position: relative; top: -12px; left: 30px;" alt="upArrow" />
<div class="suggestionList" id="autoSuggestionsList">
</div>
</div></td><td>
1<input type="radio" name="rank2" value="1" <? if ($rank2=="1"){ echo "checked"; } ?> >
2<input type="radio" name="rank2" value="2" <? if ($rank2=="2"){ echo "checked"; } ?> >
3<input type="radio" name="rank2" value="3" <? if ($rank2=="3"){ echo "checked"; } ?> >
4<input type="radio" name="rank2" value="4" <? if ($rank2=="4"){ echo "checked"; } ?> >
如果你看看頂部的JS,我推測通過使兩個函數assignin g數據到兩個不同ID的字段將允許我在每個字段上都有自動完成功能(這可以正常工作),但是當我做出選擇時,總是彈出第一個文本框,而不管我從哪個輸入框開始...意思是如果我開始在框1中輸入(id inputString),然後從自動填充建議中進行選擇,框1被填充。但是,如果我開始在方框2(id inputString2)中輸入內容並獲取建議,請單擊一個建議,然後方框1(id inputString)被填充,而不是方框2(id inputString2)。
任何幫助,將不勝感激。
問候
達倫
您可以將其發佈到jFiddle?這將是更容易調試... – 2011-04-01 19:56:56
沒關係,我想通了。請參閱下面的答案。 – 2011-04-01 20:10:51