私はJQuery UI DatepickerアドオンをDateTimePickerとして使用しています http://jsfiddle.net/j5rkbnrt/1/
<input id="deliveryTime" name="deliveryTime" type="text" value="08/05/2015 10:00">
$('#deliveryTime').datetimepicker({
dateFormat: 'dd/mm/yy',
timeFormat: 'HH:mm',
});
DateTimePickerは入力フィールドに関連付けられています。日付を選択すると、入力フィールドの値が変更されません。したがって、この入力を含むフォームを送信すると、常にデフォルト値が取得されます。
デフォルトのjquery datepickerを確認しましたが、これも入力の値を変更しません。 https://jqueryui.com/datepicker/
ここで何が欠けていますか?
インラインvalue
attributeを、入力フィールドに含まれる実際の値と混同しています。
属性値とは、次のことを意味します。
_<input id="deliveryTime" name="deliveryTime" type="text" value="08/05/2015 10:00">
_
値attributeは_value="08/05/2015 10:00"
_です。値は、入力フィールドに入力された、選択した日付にすることができます。
したがって、属性が_value="08/05/2015 10:00"
_である場合でも、入力の実際の値、つまり入力フィールド内のテキストが実際の値になります。
入力に新しい値を入力して$('#deliveryTime').val()
を使用すると、新しい値が入力フィールド内のテキストの実際の値であることがわかります。
入力フィールドのattributeを変更することに熱心である場合、val()
はすでにその値を返すため、これはあいまいなものです。次に、以下を実行する必要があります。
_$('#deliveryTime').change(function(){
$(this).attr('value', $('#deliveryTime').val());
});
_
したがって、「deliveryTimeが変更されるたびに、value
属性を入力値に設定します」。 フィドル!
私が言ったように、これはあいまいです。同じ目的を果たすには、$('#deliveryTime').val()
を使用することをお勧めします。
うまくいきました!その更新入力の値ですが、chrome devtoolsでは、この更新は表示されません。このフォームを送信してネットワークを確認してください。すべてのデータが正しく送信されていることがわかります。)