0

私はjqueryui datepickerでswfuploadを使用しています:

  1. 日付ピッカーを開く
  2. 日付ピッカーを閉じるか終了する
  3. アップロード ボタン (swf であり、<object>タグとして表示される html 内) をクリックします。

この問題は、jquery ui 例外である IE9 でのみ発生します
-> この日付ピッカーのインスタンス データがありません。

デバッグすると、この時点で問題が発生します。
-> return $.data(a,PROP_NAME)
a は object 要素であり、PROP_NAME は単なる文字列 'datepicker' です。

それをIE7、8、およびchromeに入力すると、そのオブジェクトにバインドされた「datepicker」という名前のデータがないため、未定義の原因が返されます..しかし、IE9は例外をスローします。

私はいくつかのグーグルを行いましたが、これに関する議論は見つかりませんでした。

オブジェクト要素をスパンで覆い、そのスパンでクリックイベントが発生すると、swfオブジェクトへのクリックイベントを動的にトリガーすることを考えていました..しかし、それを行うには、いくつかの外部ものが必要になると思います...だから放置してます..

誰かがそれを理解する方法やアドバイスを知っていますか?

4

1 に答える 1

2

私もまったく同じ問題を経験しました.jquery-ui datepickerとuploadify(flashを使用するためオブジェクトタグを使用)の使用中に発生しました。IE9のみ。

すでに特定したように、問題は jquery-ui にあります。これを修正するために私が見つけた唯一の方法は、次の例外コードを削除して、縮小された jquery-ui コードを変更することでした。

スロー「この日付ピッカーのインスタンス データがありません」

これにより、jquery-ui が例外をスローするのを防ぎます。これは、uploadify を続行でき、影響を受けないことを意味します。

明らかに欠点は次のとおりです。

  1. これはフレームワーク スクリプトの変更であるため、将来 jquery-ui の新しいバージョンまたは更新されたバージョンがアプリケーションに追加された場合に誤って上書きされる可能性があります (例外コードが再設定される可能性があります)。と

  2. 例外は処理されなくなりました。つまり、コードが有効で「既知」であっても、「この日付ピッカーのインスタンス データが見つかりません」というエラーがスローされなくなります。したがって、他の理由で動作しない場合、datepicker のデバッグで問題が発生する可能性があります。

于 2013-01-21T13:39:27.973 に答える