0

在 jQuery 中,我试图在选择框中获取当前所选项目的 'val' 属性的值,使用该值检索数据,然后使用工具提示显示该数据。

出于测试目的,当我运行以下命令时,它会得到很好的值并按预期​​工作:

$( 'select' )
.mouseover( function(){
    alert( $(this).val().trim() );
})

此外,以下内容也适用于硬编码的参数值:

$( 'select' ).tooltip({
       content: cellTooltipContent( '865' )
});

但是当我尝试以下类似的操作时,Chrome 开发者工具说 cellTooltipContent 函数的参数是未定义的。

$( 'select' ).tooltip({
       content: cellTooltipContent( $(this).val() )
});

这也不起作用:

$( 'select' ).tooltip({
       content: cellTooltipContent( $(this).find(':selected').text() )
});

似乎认为是指文档而不是当前选定的项目。我还尝试了this.val作为参数,以及其他几十个东西。我已经为此工作了三天,但我完全陷入了困境。

4

1 回答 1

0

Wrap your calls in an anonymous function:

$('select').tooltip({
    content: function() { return cellTooltipContent( $(this).val() )}
});

A JSFiddle example.

于 2013-08-22T19:22:16.160 回答