测试是否初始化了JQuery工具提示

Seb*_*ien 5 jquery jquery-ui conditional-statements jquery-tooltip

我正在使用JQuery UI Tooltip和AJAX来验证表单.

我正在为每个字段使用一个工具提示,我正在根据我的AJAX返回的错误更改此工具提示的内容.

为了使我的代码完整,我需要测试工具提示是否已经为此字段初始化(更改内容),否则(创建工具提示).

问题是我不知道检查工具提示是否初始化的任何情感方法.

HTML:

<input type="text" id="text1"/>
<input type="text" id="text2"/>
Run Code Online (Sandbox Code Playgroud)

我尝试了以下但是他们都无法测试工具提示是否已经创建.

JQUERY:

if($("#text1").tooltip() != null) //or $("#text1").tooltip() != 'undefined'
//does'nt work because .tooltip() always return an object.

if(typeof $("#text1").tooltip() != null)//or typeof $("#text1").tooltip() != 'undefined'
//does'nt work always return an object.

if($("#text1").tooltip().hasOwnProperty('option'))//or $("#text1").tooltip().hasOwnProperty('content')
//does'nt work it always return false.
Run Code Online (Sandbox Code Playgroud)

如果有人可以帮我找到一种方法来检查工具提示是否存在,那就非常感激了

谢谢!

iva*_*vin 20

只需检查data('ui-tooltip')你的元素.见例子:

if($element.data('ui-tooltip')) {
    $element.tooltip('destroy');
}
Run Code Online (Sandbox Code Playgroud)


Seb*_*ien 0

解决,我创建了一个使用 html 元素的 title 属性的工具提示。我没有检查工具提示是否存在来创建新工具提示或更新现有工具提示,而是更新元素的标题属性。