OK-カスタムの日付ピッカーコントロールを使用するシステムで作業しています(他にもコントロールがあることはわかっていますが、一貫性を保つために、現在の問題が発生している理由を理解して修正したいと思います)。
したがって、テキストボックスとPage_PreRenderを使用したカスタムユーザーコントロールは次のようになります。
protected void Page_PreRender(object sender, EventArgs e)
{
string clientScript = @"
$(function(){
$('#" + this.Date1.ClientID + @"').datepicker({dateFormat: 'dd/mm/yy', constrainInput: true});
});";
Page.ClientScript.RegisterStartupScript(this.GetType(), this.ClientID, clientScript, true);
//Type t = this.GetType();
//if (!Page.ClientScript.IsStartupScriptRegistered(t, this.ClientID))
//{
// Page.ClientScript.RegisterStartupScript(t, this.ClientID, clientScript, true);
//}
}
コメントアウトされたものを無視します-それは私が別のことを試みていた-助けにはなりませんでした。
私の問題は、ページをロードするときにこれがすべて正常に機能することです。しかし、ドロップダウンリストから何かを選択すると、ページのポストバックが発生します。日付フィールドをクリックすると、機能しなくなります。のように、テキストボックスをクリックすると、素敵なカレンダーコントロールが表示されます。しかし、ポストバック後、表示される優れたカレンダーコントロールはありません!
現在、すべて更新パネル内に(ホスティングページで)ラップされています。だから私は更新パネルのものをコメントアウトし、日付はページのポストバック後に機能しています。したがって、それはその更新パネルに関連するもののようです。
何か提案はありますか?
ありがとう!!