動的に作成されたテキスト ボックスを持つ複合ユーザー コントロールがあります。テキスト ボックスが作成され、ASCX のプレースホルダーに挿入されると、作成したばかりのテキスト ボックスを対象とする AutoCompleteExtender も動的に作成します。ACE を 1 つだけ追加するとすべて正常に動作しますが、ページに複数の ACE が存在するとすぐに次のエラーが発生します。
Microsoft JScript ランタイム エラー: プロパティ '_behaviors' の値を取得できません: オブジェクトが null または未定義です
これは、jQuery 内に含まれる JScript エラーの特定の場所です。
var c=a._behaviors=a._behaviors||[];
ページにダミーのテキスト ボックスと ACE を作成すると、同じコードが機能します。しかし、これらはカスタム コントロールで作成する必要があります。
これは、私が「正しくやっている」ことを示しています。また、コントロールで ONE ACE を問題なく動作させることができるためです。
ページ メソッドではなく、Web サービスを使用しています。ユーザー コントロールとカスタム コントロールにページ メソッドを含めることはできません。それらは「ページ」にある必要があります。
私は多くのことを試しました - すべてのテキスト ボックスに一意の ID があることを確認しました。ACE にはすべて固有の ID があります。定義された ACE の BehaviorID を使用して、または使用せずに試しました (ここでも一意の ID を使用)。単一の ACE がうまく動作するため、Web サービスが機能することはわかっています。
生成された ACE のリストをコントロールからページ レベルまで渡し、それらをページ レベルのプレースホルダーに挿入することさえ試みました。次に、提供された ID でテキストボックスが見つからないという RTE を取得します。
動的に生成されたテキスト ボックスとエクステンダーを使用して、複合ユーザー コントロールに複数の ACE を追加するためのヒントはありますか?
よろしく。