4

jQuery UI ダイアログを使用して、顧客に関する情報を表示し、フォームを表示する小さなポップアップを提供しようとしています。最初のクリックでのみ機能することを除いて、すべて正常に機能します。同じボタンをもう一度クリックしようとすると、または別のボタンをクリックしようとすると、次のエラー メッセージが表示されます。

Uncaught Error: cannot call methods on dialog prior to initialization; attempted to call method 'option'

ダイアログを閉じたり破棄したりすることに関係していることはわかりましたが、何が間違っているのかわかりません。その部分にコメントすると$(this).dialog('destroy');、少なくともダイアログは機能しますが、別のエラーが発生します

Uncaught TypeError: Object Exclude something has no method 'dialog'

jquery-ui-1.9.2 で jQuery 1.8.3/1.9.1 を試してみましたが、同じ問題が発生します。

これは私が設定したものです: http://jsfiddle.net/ycZpQ/

4

4 に答える 4

1

jquery-ui.css1 つのページでjquery-ui.jsとの異なるバージョンが使用されている場合に、この問題が発生しましたjquery.js。これを解決するために、同じバージョンの Jquery ファイルを使用しました

于 2015-11-19T02:53:08.067 に答える
0

実際、destroy() メソッドは、ダイアログ クラスからコンテナーをアンバインドします。つまり、機能を削除します。

ダイアログを閉じたい場合は、close() メソッドを使用します。彼らのドキュメントでそれをチェックしてください

編集: ダイアログを再度使用する必要がない場合にのみ、 destroy() メソッドを呼び出す必要があります。

于 2013-07-01T08:49:13.200 に答える