利用可能なオプションは 2 つあります。最初のオプションは、テキスト ボックスの横に html 要素を追加し、javascript でクリック イベントを処理することです。このイベント ハンドラーでは、カレンダー エクステンダーをクリアします。これはコードです:
<script type="text/javascript">
function clearDate(extenderId) {
$find(extenderId).set_selectedDate(null);
}
</script>
<asp:TextBox runat="server" ID="Date1" autocomplete="off" />
<input type="button" value="x" onclick="clearDate('<%= defaultCalendarExtender.ClientID %>')" />
<br />
<ajaxToolkit:CalendarExtender ID="defaultCalendarExtender" runat="server"
TargetControlID="Date1" />
2 つ目の解決策は、AjaxControlToolkit プロジェクトのソースを調整することです。実際には、ファイルのみを変更する必要がありClient/MicrosoftAjax.Extended/Calendar/CalendarBehavior.pre.js
ます。以下のコードに置き換えます。各変更を段階的に説明するのが面倒なので、実際には多くのコードがあります;)簡単に言えば、カレンダーのポップアップフッターに新しい要素を追加して、選択された日付が指定されている場合はデフォルトの選択値にリセットするか、null にリセットしました. CalendarBehavior.pre.js の横にあるCalendar.cssファイルも微調整できます。
巨大な回答が制限されているため、私はpastebinにjavascriptコードを投稿しました
Pastebin link