如何捕获mouseover元素?

时间:2010-03-26 11:39:34

标签: javascript autocomplete

我正在开发一个自动完成功能。但我面临一个问题......

当我点击建议框时,其中一个结果将不会进入建议html框...

function handleOnMouseOver(oTr)
{
    deselectAll();
    oTr.className ="highlightrow";
    position = oTr.id.substring(2, oTr.id.length);
    updateKeywordValue(position);
}

你可以告诉解决方案

感谢

function updateKeywordValue(oTr) {

var oKeyword = document.getElementById(“keyword”);

var strKeyword =“”;

var crtLink = document.getElementById(“a”+ oTr.id.substring(2,oTr.id.length))。toString();

crtLink = crtLink.replace(“ - ”,“_”);

crtLink = crtLink.substring(0,crtLink.length);

oKeyword.value = unescape(crtLink.substring(googleurl.length,crtLink.length));

strKeyword = oKeyword.value.toString();

if(oTr.id.substring(2,oTr.id.length)== 0) {

oKeyword.value = strKeyword.substring(3,strKeyword.length);

}

selectedKeyword = oKeyword.value;

}

1 个答案:

答案 0 :(得分:1)

你应该摆脱substring()方法中的第二个参数。因为你只想要字符串的其余部分,我猜,如果你没有设置第二个值,那就是默认值。

position = oTr.id.substring(2);

我的猜测是你从id中获取关键字的值,并将其推入输入框,对吧?如果是这种情况,我们需要查看更多代码。具体来说,我希望看到updateKeywordValue函数,我也想知道它们悬停在的文本是否是您尝试发送输入框的文本。如果是这样,你可以简化整个事情并使用类似的东西:

function handleOnMouseOver(oTr)
{
    deselectAll();
    oTr.className ="highlightrow";
    keywordbox.value = oTr.innerHTML;

}

但这是基于这样的假设:悬停行中的唯一数据是文本,而没有其他html。我必须为你的输入框组成一个名字。

但如果这样,这是因为我们需要更多信息才能看到真正的问题。