6

フォームを検証するために、AJAX と共に JQuery UI ツールチップを使用しています。

各フィールドに 1 つのツールチップを使用しており、AJAX が返すエラーに応じてこのツールチップの内容を変更しています。

コードを完成させるには、このフィールドのツールチップが既に初期化されているかどうか (コンテンツを変更)、そうでない場合 (ツールチップを作成) をテストする必要があります。

問題は、ツールチップが初期化されているかどうかを確認する感情的な方法がわからないことです。

HTML:

<input type="text" id="text1"/>
<input type="text" id="text2"/>

以下を試しましたが、ツールチップが既に作成されているかどうかをテストできません。

Jクエリ:

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.

ツールチップが存在するかどうかを確認する方法を誰かが見つけるのを手伝ってくれたら、本当に感謝しています

ありがとう!

4

4 に答える 4

1

誰かが新しいバージョンを使用している場合の更新ですtooltipstered。クラスを簡単に確認できます。

if (!$(this).hasClass("tooltipstered")) {
    // Init
}
于 2015-08-26T13:58:25.670 に答える
1

解決して、html 要素の title 属性を使用するツールチップを 1 つ作成しました。ツールチップが存在するかどうかを確認して、新しいツールチップを作成するか、既存のものを更新する代わりに、要素の title 属性を更新します。

于 2013-09-19T18:39:41.297 に答える