实际上,我在 HTML 中有超过 8 个输入和 8 个不同的 id,我想将 jquery 对象传递给 onblur 事件函数,所以我不需要创建 8 个重复函数并且只创建 1 个脚本函数。我一直在努力搜索堆栈溢出几个小时,但找不到我的问题的答案,或者我可能只是 jquery 的新手。希望您能帮助我并提前感谢...
function fill(t,xx,zz) {
$(xx).val(t);
setTimeout("$(zz).hide();", 200);
}
<input type="text" id="inputString" size="50" value="" onkeyup="lookup(this.value);" onblur="fill(this.value,'#inputString','#suggestions');" />
<div class="suggestionsBox" id="suggestions" style="display: none;">
为了让您更好地理解代码,这是真正有效的原始代码,仅适用于 1-input html 标记。我打算在 8 输入 html 标签上只使用一个函数。
<script type="text/javascript" src="jquery-1.2.1.pack.js"></script>
function lookup(xString) {
if(xString.length == 0) {
// Hide the suggestion box.
$('#suggestions').hide();
} else {
$.post("db_rpc.php", {queryString: ""+xString+""}, function(data){
if(data.length >0) {
$('#suggestions').show();
$('#autoSuggestionsList').html(data);
}
});
}
} // lookup
function fill(t) {
$('#inputString').val(t);
setTimeout("$('#suggestions').hide();", 200);
}