0

ユーザーが「月の日」の下のボタンをクリックしたときに関数を起動したい。

「Hour」のコードを見つけました。しかし、月のものは見つかりませんでした。

元の問題 -

AnyTime ピッカーで選択した値で HTML スパンを更新しています。最早制限と最新制限を設定しました。前者には時間と分が含まれ、アプリケーションはスケジューラであるため、将来の日付のみが必要ですが、1 週間以上は必要ありません。

私はanytime.jsの624行目に関数呼び出しを追加しました

これはうまくいきます。たとえば、午後 5 時に、ユーザーが 2 月 18 日の午前 12 時 (デフォルト) を選択すると、スパンは適切に更新されます。しかし、2 月 15 日 (今日) を選択すると、最も早い制限である「午後 5 時」が自動的に選択され、入力が適切に更新されます。しかし、関数への呼び出しはありません (私も期待していません。これには何も追加していません)。

このような状況が発生するたびに、関数が適切に呼び出されるようにするにはどうすればよいですか?

皆さん、ありがとうございました。

4

2 に答える 2

1

私があなたの質問を正しく理解している場合: 月の日のプレスを処理する関数は、anytime.js (実際に変更する必要がある圧縮されていないバージョン) の 1579 行目から、または 236 行目から始まる、インラインで定義されています。 Anytimec.js (圧縮されたバージョンで、わかりにくい)。

于 2011-02-15T04:37:55.447 に答える
0

いつでも.jsプラグイン内で何も変更する必要はないと思います!

私の回避策は、datepicker の入力 " onChange " イベントに依存することでし。そのため、入力値が更新されるたびに、カスタム イベントが発生します。

input.change( function () { // Update your formatted span here
    $("#my-span").html( this.value.length ? _formatVal(this.value) : "-" );
} );

また、formatVal()は、元の入力形式をより洗練された形式に変換してスパンで表示する関数になる可能性があります。

function _formatVal( val ) {
    return AnyTime.Converter( {format:'%a %e-%b-%Y'} ).format(
        AnyTime.Converter( {format:'%Y-%m-%d %H:%i:%s'} ).parse( val )
    )
}

format '%a %e-%b-%Y' はスパンで表示するもので、 format '%Y-%m-%d %H:%i:%s' は元の入力値の形式です ( DATETIME MySQL フィールドとしましょう)。

私にとって魅力のように機能します。これが役立つことを願っています!

于 2011-10-04T18:54:51.633 に答える