2011-10-31 19 views
0

オプションが定義されていないというエラーが表示されます。ドロップダウンが表示されますが、何らかの理由でオプションにアクセスできません。定義されていないドロップダウンオプション

dropdown.optionsは定義されていません [Break On This Error] dropdown.options.length = ObjectCount(equtypeList);

$(dropdown).show(); // this works 

if (ObjectCount(equipmentTypeList) > 1) 
{ 
    $(dropdown).attr("disabled", false); //this works 
    dropdown.options.length = ObjectCount(equipmentTypeList); //bombs out here saying options is null...wtf?? 
    AddDropdownOption("-- Select Equipment Type--", "-1", dropdown.id); 
} 

だから私はそれを得ていない。 dropdowを再表示すると、なぜoption属性にアクセスできないのですか(使用できない原因はnullです)。明らかに、ページにドロップダウンが再び現れるのがわかりますが、オプション属性はありません。それはちょうど私がoptions属性のためのnullを得る右のように思われません。それが有効になって再び表示されるなら、それは有効なドロップダウンであり、私はそれをaganiに追加することができるはずです。

+0

'ドロップダウンとは何ですか?前に定義した変数ですか? –

+0

var ddlEquipType = $( '#<%= ddlEquipType.ClientID%>'); – PositiveGuy

+0

私はこれまでにこの作業をしていました...オプション配列の長さを指定して値を追加するだけです。私はこのドロップダウンを隠して表示する前にこれはうまくいきました。私がそれを表示していて、それを無効にする/有効にするとうまくいきました。それは今私が隠して、これを表示し始めたばかりだ。私はオプションの配列の長さを設定する能力の問題を取得します。 – PositiveGuy

答えて

1

dropdownは、$()を呼び出して取得したjQueryオブジェクトです。 jQueryオブジェクトはoptionsプロパティを公開していません。基本的なDOM要素はそうします。

あなたはDOM要素を取得するために、インデックス構文またはget()メソッドを使用することができます。

dropdown[0].options.length = ObjectCount(equipmentTypeList); 
// or 
dropdown.get(0).options.length = ObjectCount(equipmentTypeList); 

あなたはまた、オプションを含む別のjQueryオブジェクトを構築することができ:

$("option", dropdown).length = ObjectCount(equipmentTypeList); 
// or 
dropdown.find("option").length = ObjectCount(equipmentTypeList); 

しかし、lengthに割り当てますjQueryオブジェクトのプロパティはDOMに何の影響も与えませんので、このアプローチではおそらく結果が得られません。

+0

これをクリアしてくれてありがとう。今は意味をなさない...オブジェクトへのjQueryポインタがもはや実際のオブジェクトではないことを知りましたか?私がドロップダウンコントロールを指している場合、私はまだそのWebコントロールを扱ってはいけませんか? – PositiveGuy

+0

getElementByIDを使用してドロップダウンへのポインタを取得し、それを変数に設定すると、コードは正常に動作します。なぜjQueryが重要か理解できません。私はちょうどjQueryの方法を使っています... $()の方法を使っていても同じ方法で項目を取得できますか? – PositiveGuy

+0

jQueryオブジェクトはポインタよりもラッパーです。 jQueryは他のツールキットのようにDOM要素を拡張するのではなく、ラップされた要素に適用可能なメソッドを提供します。 idで要素を選択してその要素を取得するには、 '$("#id ")[0]'のようなことをします。 –

関連する問題