3

読み取り専用の2 つの HTML テキストボックス (txtFromtxtTo) があります。これら 2 つのテキスト ボックスは、datepicker からの日付を表示するために使用されます。

私のシナリオは、txtToテキストボックスが日付で満たされているときです。2 つの日付 ( txtTo- txtFrom) を減算する JavaScript を呼び出し、結果を という名前の別のテキストボックスに入力しtxtDaysます。

これどうやってするの?テキストボックスが読み取り専用であるため、呼び出しonkeypressまたはonkeyupイベントを実行できません。

4

3 に答える 3

3

JavaScriptのonchangeイベントを利用できます。

html セクションで

<asp:TextBox ID="txtTo" runat="server" onchange="DateComparisionJavascriptFun();"></asp:TextBox>

Javascript ブロック内

<script type="text/javascript">
function DateComparisionJavascriptFun()
{
   alert("Validate dates here.");
}    
</script>
于 2012-08-15T13:28:33.493 に答える
2

ユーザーがこの関数を呼び出すことができる日付を選択すると、その日付ピッカーにコールバック関数が必要です

それがあなたのものかサードパーティの日付ピッカーかはわかりませんが、ユーザーが日付を選択したときにコールバックを定義し、テキスト入力に書き込むよりも、この場所に関数を追加できるはずです

于 2012-08-15T13:41:31.363 に答える
2

onchange イベントは、テキスト フィールドがフォーカスを失ったときにのみ発生するため、おそらくうまくいかないでしょう。

日付フィールドのテキストをプログラムで変更する場合は、他のフィールドも同時に変更する必要があります。

この種のことを複数の場所で行う場合は、Knockout JSなどのデータ バインディング フレームワークを使用し、計算されたプロパティを持つ ViewModel を使用することを強くお勧めします。

于 2012-08-15T13:34:02.143 に答える