他の誰かがこの問題を抱えていますか?
すべてのドキュメントによると、次のコードを使用して、Telerik 拡張機能または Kendo コントロールのデータにアクセスできるはずです。
var data = $('#id').data('tControlType')
ただし、実際にこのコードを機能させたことはありません。私が何をしても、「データ」関数は常に未定義を返します。コントロールは実際には正しく動作し、イベント ハンドラーの event.sender を介するなど、他のいくつかの方法でコントロール データを取得できますが、データ関数は機能しません。
Telerik Script Registrar を使用して、ページに jQuery やその他のスクリプトを含めています。現在、これは次のようになっています。
@{Html.Telerik().ScriptRegistrar().jQuery(true).jQueryValidation(true)
.Globalization(true).DefaultGroup(group => group
.Add("~/Scripts/jquery-ui-1.8.11.js")
.Add("~/Scripts/jquery.ui.touch-punch.js")
.Add("~/Scripts/jquery.unobtrusive-ajax.js")
.Add("~/Scripts/bootstrap-tab.js")
.Add("~/Scripts/bootstrap-dropdown.js")
.Add("~/Scripts/kendo/kendo.web.js")
.Add("~/Scripts/kendo/kendo.aspnetmvc.js")
.Add("~/Scripts/ui.watermark/ui.watermark.js")
.Add("~/Scripts/date.js")
.Add("~/Scripts/jquery.blockUI.js")
.Add("~/Scripts/jquery.ba-bbq.js")}
また、Telerik は jQuery 1.7.1 を使用しているようです。これは、Telerik Scripts フォルダーにあるためです。Telerik のバージョンは 2012.1.214 で、Kendo ベータ版も使用していますが、Kendo を含める前は同じ問題がありました。ScriptRegistrar は現在 <HEAD> タグにあります。これは Kendo が必要とするためですが、Telerik Extensions が推奨するように <BODY> タグの末尾の前に配置しようとしましたが、効果はありませんでした。また、IE、Firefox、Opera、Safari、Chrome でも問題が発生することを確認しております。
私は Telerik Script Registrar を使用して Telerik & jQuery 関連のすべてのスクリプトを含めているので、これは「うまく機能する」はずです。他に何が間違っている可能性がありますか?
編集:ここに一例があります:
@(Html.Telerik().NumericTextBox().Name("NumericTextBox"))
<script type="text/javascript">
$(function() {
var data = $("#NumericTextBox").data("tTextBox");
alert(data); //displays "undefined"
});
</script>