2

これを手短にします。

  • 変更時またはページ読み込み時にカレンダー エクステンダーの開始日と終了日を動的に設定したい
  • 値は .ascx の隠しフィールドに入れられ、ページのロード中に if not ポストバックで入力されます
  • カレンダー エクステンダーの 1 つのセットは、グリッド ビューのアイテム テンプレート フィールドにあり、このセット Aを呼び出します
  • 他のものは通常の html テーブルにあります -セット b

set a と set bにはフラグがありますStartDate="<%# hfStart.value%>" EndDate="<%# hfEnd.value%>"

グリッド ビュー列のアイテム テンプレートに a を設定すると、魅力のように機能します

HTML テーブルのset b がまったく機能していないようです

何を与える?

これまでのところ、同じコードを内部に含む他のサーバータグを試しましたが、明らかに重要な詳細が欠けています. 一方が機能し、もう一方が機能しないのはなぜですか?

更新:試した

  • CDate(hfstart.value).ToString<%: および <%= タグ付き
  • <%= hfstart.value %>

私が誤解しない限り、 <%= は asp.net ライフサイクルの最後で起動し、このコンテキストでは役に立たなくなります。

4

2 に答える 2

2

<%# %>結局のところ、他の人が好きなようにaspタグ内で使用し、ASP.NETライフサイクルの最後<% %><%= %>実行し、バッファを吐き出して、どこにあるかを知る必要があります。ただし、使用する場合<%# %>は、asp コントロールがDataBound();適切なタイミングである必要があります。

これは、グリッドビュー内のすべてがそのコマンド<item template>にバインドされているため、グリッドビューのタグでモデル化されたコントロールに対して自動的に発生します。gridview.DataBound()

于 2013-11-06T18:03:16.677 に答える
1

<%# %>データバインディング用のタグを使用しているからでしょうか? これは、データバインディングをサポートしているため、GridView で機能する理由を説明します。

ただし、基本的な HTML テーブルでは、<% %>代わりにタグを使用するか<%= %>、メソッドを呼び出す必要があります。

タグの種類の詳細については、このリファレンスを試してください。

于 2013-11-05T23:58:02.200 に答える