2012-02-13 14 views
0

私は、javascriptとjqueryを使用して簡単な日付ピッカーを作った。日付を選択すると、入力ボックスに表示されます。この入力ボックスは、javascriptを使用して変更された可能性が高いため、変更イベントが発生していない可能性があります。このイベントを立ち上げるか、カスタムイベントを作る方法はありますか?値変更のイベントを起動

+0

datepickerプラグイン(jQuery UIのプラグインなど)を使用しましたか独自のプラグインを実装しましたか? –

+0

これはonchangeイベントを起動する必要があります。 "$" "+ calName +" _date ").val(cal.actualdate +"。 "+(cal.month + 1)+"。 "+ cal.year)を使用して、値を変更しているURコード – Yorgo

+0

を投稿してください。 '' $ "" + calName + "_date").change(); '(Thx Kane Black)を追加した後で動作しています –

答えて

2

ランあなたは、新しい値を代入した後、このコード:

$('input').change(); 
+1

すべての入力ではなく、特定の入力でイベントを発生させる方が良いでしょう。 – SpaceBison

+0

ありがとう、それは働いた。 –

+0

@SpaceBison、それは単なる一般的な答えでした。私は、Uriel_SVKが特定の入力フィールドに変更イベントを割り当てる方法を知っていると仮定しました。 –

0
$("input#yourInputId").change(); 

または

$("input#yourInputId").trigger("change"); 

は、トリックを行う必要があります。

  • は、潜在的なブラウザの凹凸や変更イベントのためのサポートの欠如に注意してテキストボックスのためにあなたのHTMLのID="abc"一部を表しIDで#yourInputIdを交換してください - 動作は、特に古いブラウザでは、異なる場合があります。
+0

jQueryはIE6の変更動作を正規化します> – OptimusCrime

1

.changeは、jquery内の.on関数を指しているだけなので、.onを直接使用することをお勧めします。

$('#inputID').on('change', function() { 
}); 
0

変更と入力イベントがあります。入力が変化してフォーカスが失われた後の最初の発砲。後者は、入力が変化したときに直ちに発火する。しかし、プログラム的に入力を変更した後に発生するイベントはありません。

入力を変更するコードを制御できる場合は、もちろん他の回答に記載されているように手動でイベントをトリガーすることができます。

関連する問題