我有两个要素:
<input type="text" name="pmTo" id="pmTo" onkeyup="offerSuggs('none');" onfocus="showSelect();" onblur="hideSelect();" />
和一个动态创建的(这都是自动建议程序的一部分):
$suggString .= '<div name="'.$value.'" id="'.$value.'" class="suggMouseOver" onmouseover="highlightDivs(this);" onmouseout="blurDivs(this);" onclick="fillInput(this);">'.$value.'</div>';
好的,然后是对应于onblur
输入元素的事件函数,然后是对应于onclick
div元素的事件函数:
function hideSelect() {
offerSuggs('checkFinal');
document.getElementById('nameSugg').style.display="none";
}
function fillInput(elemName) {
document.getElementById('pmTo').value=elemName.id;
}
编辑:我如何onclick
在他们点击的元素上正确触发,而不onblur
首先隐藏 div 的事件,这使得onclick
毫无意义?但是,当文本框失去焦点时,我仍然希望保留建议 div 消失的功能。