2017-06-02 16 views
3

日付ピッカーとdatetimepickerを自分のフォームで別々に使用していました。私が時間や日付だけで働くのであれば、彼らは働いています。しかし、私は両方の時間を置くときは動作していません。時間の代わりに日付が表示されます。次のように 私のコードは次のとおりです。ブートストラップ時に別々に競合が発生する

<!DOCTYPE html> 
<html> 
<head> 
<script 
src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"> 
</script> 
<script src="https://code.jquery.com/jquery-1.12.4.js"></script> 
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script> 
<link rel="stylesheet" 
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/ 
bootstrap.min.css"> 
<script 
src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"> 
</script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap- 
datetimepicker/4.17.37/js/bootstrap-datetimepicker.min.js"></script> 
</head> 

<body> 
<div> 
         <div class="container"> 
          <div class="row"> 
           <div class='col-sm-6'> 
            <div class="form-group"> 
             <div class='input-group date' id='datetimepicker3' style="width:140px;"> 
              <input type="text" class="form-control"> 
              <span class="input-group-addon"> 
               <span class="glyphicon glyphicon-time"></span> 
              </span> 
             </div> 
            </div> 
           </div> 
           <script type="text/javascript"> 
            $(function() { 
             $('#datetimepicker3').datetimepicker({ 
              format: 'LT' 
             }); 
            }); 
           </script> 
          </div> 
         </div> 

        </div> 


        <div class="container"> 
         <div class="row"> 

         </div> 
         <br /> 
         <div class="row"> 
          <div class='col-sm-3'> 
           <div class="form-group"> 
            <div class='input-group date' id='datetimepicker1'> 
             <input type='text' class="form-control" /> 
             <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span> 
             </span> 
            </div> 
           </div> 
          </div> 
          <script type="text/javascript"> 
           $(function() { 
            var bindDatePicker = function() { 
             $(".date").datetimepicker({ 
              format: 'YYYY-MM-DD', 
              icons: { 
               time: "fa fa-clock-o", 
               date: "fa fa-calendar", 
               up: "fa fa-arrow-up", 
               down: "fa fa-arrow-down" 
              } 
             }).find('input:first').on("blur", function() { 
              // check if the date is correct. We can accept dd-mm-yyyy and yyyy-mm-dd. 
              // update the format if it's yyyy-mm-dd 
              var date = parseDate($(this).val()); 

              if (!isValidDate(date)) { 
               //create date based on momentjs (we have that) 
               date = moment().format('YYYY-MM-DD'); 
              } 

              $(this).val(date); 
             }); 
            } 

            var isValidDate = function (value, format) { 
             format = format || false; 
             // lets parse the date to the best of our knowledge 
             if (format) { 
              value = parseDate(value); 
             } 

             var timestamp = Date.parse(value); 

             return isNaN(timestamp) == false; 
            } 

            var parseDate = function (value) { 
             var m = value.match(/^(\d{1,2})(\/|-)?(\d{1,2})(\/|-)?(\d{4})$/); 
             if (m) 
              value = m[5] + '-' + ("00" + m[3]).slice(-2) + '-' + ("00" + m[1]).slice(-2); 

             return value; 
            } 

            bindDatePicker(); 
           }); 
          </script> 
         </div> 
        </div> 

Image reference for problem.

答えて

0

これはあなたの問題

<div class="container"> 
<div class="row"> 
    <div class='col-sm-6'> 
     <div class="form-group"> 
      <div class='input-group date' id='datetimepicker3'> 
       <input type='text' class="form-control" /> 
       <span class="input-group-addon"> 
        <span class="glyphicon glyphicon-time"></span> 
       </span> 
      </div> 
     </div> 
    </div> 
    <script type="text/javascript"> 
     $(function() { 
      $('#datetimepicker3').datetimepicker({ 
       format: 'LT' 
      }); 
     }); 
    </script> 
</div> 

を解決しますただ、私は、これはあなたがあなたが今だけコピーして過去 ただ、戻り変数を変更することができます:)

+0

返信いただきありがとうございます。そのうまく動作します。 –

0

私はあなたが両方のフィールドに日付を取得すると思いますか?

0

必要なものだと思いますコピーして貼り付けます日付ピッカーの名前 ブートストラップ時間ピッカーの格納された変数を妨害することになります

<!DOCTYPE html> 
<html> 
<head> 
<script 
src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"> 
</script> 
<script src="https://code.jquery.com/jquery-1.12.4.js"></script> 
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script> 
<link rel="stylesheet" 
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/ 
bootstrap.min.css"> 
<script 
src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"> 
</script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap- 
datetimepicker/4.17.37/js/bootstrap-datetimepicker.min.js"></script> 
</head> 

<body> 
<div> 
         <div class="container"> 
          <div class="row"> 
           <div class='col-sm-6'> 
            <div class="form-group"> 
             <div class='input-group date' id='datetimepicker3' style="width:140px;"> 
              <input type="text" class="form-control"> 
              <span class="input-group-addon"> 
               <span class="glyphicon glyphicon-time"></span> 
              </span> 
             </div> 
            </div> 
           </div> 
           <script type="text/javascript"> 
            $(function() { 
             $('#datetimepicker3').datetimepicker({ 
              format: 'LT' 
             }); 
            }); 
           </script> 
          </div> 
         </div> 

        </div> 


        <div class="container"> 
         <div class="row"> 

         </div> 
         <br /> 
         <div class="row"> 
          <div class='col-sm-3'> 
           <div class="form-group"> 
            <div class='input-group date' id='datetimepicker1'> 
             <input type='text' class="form-control" /> 
             <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span> 
             </span> 
            </div> 
           </div> 
          </div> 
          <script type="text/javascript"> 
           $(function() { 
            var bindDatePicker = function() { 
             $(".date").datetimepicker({ 
              format: 'YYYY-MM-DD', 
              icons: { 
               time: "fa fa-clock-o", 
               date: "fa fa-calendar", 
               up: "fa fa-arrow-up", 
               down: "fa fa-arrow-down" 
              } 
             }).find('input:first').on("blur", function() { 
              // check if the date is correct. We can accept dd-mm-yyyy and yyyy-mm-dd. 
              // update the format if it's yyyy-mm-dd 
              var date = parseDate($(this).val()); 

              if (!isValidDate(date)) { 
               //create date based on momentjs (we have that) 
               date = moment().format('YYYY-MM-DD'); 
              } 

              $(this).val(dates); 
             }); 
            } 

            var isValidDate = function (value, format) { 
             format = format || false; 
             // lets parse the date to the best of our knowledge 
             if (format) { 
              value = parseDate(value); 
             } 

             var timestamp = Date.parse(value); 

             return isNaN(timestamp) == false; 
            } 

            var parseDate = function (value) { 
             var m = value.match(/^(\d{1,2})(\/|-)?(\d{1,2})(\/|-)?(\d{4})$/); 
             if (m) 
              values = m[5] + '-' + ("00" + m[3]).slice(-2) + '-' + ("00" + m[1]).slice(-2); 

             return values; 
            } 

            bindDatePicker(); 
           }); 
          </script> 
         </div> 
        </div> 
関連する問題