2016-05-26 10 views
0

私は、Razorビューと剣道UI Webコントロールを使用するC#Webアプリケーションを用意しています。コントロールの無効なプロパティを切り替えようとしているときに '未定義の未定義のプロパティ'エラーが発生しました。

function OnChangeC0100(cmb) 
{ 
    var stupidJS = document.getElementById("cmbV14_Adm_C0200_RepetitionThreeWords_Tab6"); 

    stupidJS.disabled = (cmb.options[cmb.selectedIndex].value == "0"); 
} 

二行目が実行しようとすると、私はこのエラー

を得る: onchangeプロパティは、このJSメソッドを参照

@(Html.Kendo().DropDownListFor(m => m.MentalStatus).HtmlAttributes(new { id = "cmbMentalStatus", @class = "k-dropdown-width-30", @tabIndex = "1", style = "width:60px", onchange = "OnChangeC0100(cmbMentalStatus);" }).BindTo(ViewBag.ZeroToOne).OptionLabel(" ")) 

:私のフォームで、私はそうのようにDropDownListコントロールを定義しています

"未定義のプロパティ 'undefined'を読み取れません"

私は間違って何をしていますか?ブレークポイントを設定した場合、cmbnullではありません。 stupidJSnullではありません。

this linkの場合、disabledは設定するプロパティです。それは正確ではないのですか?

編集:私はこれらの質問を見てきました。ここに

How to Get Dropdown's Selected Item's text in Kendo UI?

how to get selected value for Kendo DropDownList

http://www.telerik.com/forums/dropdownlist-getting-clientside-value-on-selected-item-in-mvc

とドキュメント。 http://demos.telerik.com/kendo-ui/dropdownlist/api

しかし、関係なく、私がウォッチウィンドウにしようとするもの、私はそれが仕事を得ることはできません。

enter image description here

最初のものが最も近くなります。少なくとも値は返されますが、正しい値ではありません。私は、テキストと値が両方とも "1"である項目を選択しましたが、空文字列を返します。スクリーンショットには表示されていませんが、$("#cmb").kendoDropDownList().val()undefinedとなります。どうして私はコントロールへの参照をハードコードするのですか?それはソート・ワークですが、メソッドへのパラメータとして渡されたオブジェクトは機能しません。

+0

_ "' cmb'は 'null'"ではありません "_、それは何ですか?エラーは、 'stupidJS.disabled'ではなく、おそらくそれが何かと関係していることを示しています - プロパティを読み込んでいて、読み込みしようとしているプロパティの名前(' cmb.selectedIndex')とオブジェクト'cmb.options'を読み込もうとしています。これは、' cmb'にこれらのプロパティがないことを示しています。それはあなたの '