0

ロード時に起動し、IDに基づいてオブジェクトをフェッチするコードがあります。nullを返します。

<script type = "text/javascript">
   $(function(){
      var TV = $find("FieldTreeViewer");
   });
</script>
<body>
   <telerik:RadTreeView OnClientNodeExpanded="nodePopulating" OnClientNodeClicked="checkLeaf" runat="server" ID = "FieldTreeViewer">
   </telerik:RadTreeView>
</body>

onloadはnullを返すようですが、コンソールに移動してvar TVステートメントを再入力すると、それが割り当てられます。コントロールはまだレンダリングされていないと思います。関数を起動する前にページがレンダリングされるようにするにはどうすればよいですか?

aspにonLoad、onInitなどがあることは知っていますが、これは純粋にマークアップであり、舞台裏に魔法はありません。

マークアップがレンダリングされると思ったのですが、ページの読み込みが完了したら、関数を呼び出してIDでコントロールを参照できます。

4

1 に答える 1

1

代わりに、window.loadでコードを実行してみてください。

$(window).load(function () 
{ 
    var TV = $find("FieldTreeViewer"); 
});
于 2012-07-31T16:02:01.230 に答える