0

いくつかのフィールドを持つフォームがあります。フォームに組み込まれたすべての検証を楽しんでおり、ajax の使用は禁じられています。

問題は次のとおりです。フォームに日付ピッカーと時間セレクターがあります。しかし、値をそれらの組み合わせ、つまり 6/7/2013 05:00:00 として送信する必要があります。

私が行った調査から、送信する前にこれらの値を停止して連結することはできません。

あまり策略に巻き込まれることなくこれを行うにはどうすればよいでしょうか?

役立つヒントをありがとう!

4

3 に答える 3

2

隠し要素を使用できます。この例ではこれを使用します。

<input type="hidden" name="datetime" value=""/>

フォームで送信イベントが発生した場合は、これを実行します。

$('form').on('submit', function(){
  var $form = $(this);
  $form.find('[name=datetime]').val( 
    $form.find('[name=date]').val() + ' ' + $form.find('[name=time]').val()
  );
});

編集

これはjQueryのタグが付けられていないことに気付いたので、フィールド名が「追加」でありdatetime、 、dateおよびという名前の入力があると仮定して、バニラjavascriptを使用した最善の試みを次に示しますtime

var add = document.forms.add;

add.onsubmit = function(e){
  add.datetime.value = add.date.value + ' ' + add.time.value;
}

ただし、これは間違いなくサーバー側で処理する必要があります。

于 2013-06-07T17:50:10.557 に答える
1

jQuery UI Datetimepicker プラグインを使用できます。単一のフィールドで日付と時刻をキャッチするのに役立ちます。参照してください。

$('#selectedDateTimeWithFormat').datetimepicker({ dateFormat: 'dd-mm-yy', timeFormat: 'hh:mm:ss' });

http://timjames.me/jquery-ui-datetimepicker-plugin

于 2013-06-07T18:08:43.470 に答える
1

3 番目の非表示フィールドを用意し、日付または時刻の変更時に値 (日付 + 時刻) を更新し、必要な場所でその値を使用します。

于 2013-06-07T17:50:50.233 に答える