【问题标题】:How to add yii2 datepicker widget in external js file如何在外部 js 文件中添加 yii2 datepicker 小部件
【发布时间】:2015-02-25 06:06:27
【问题描述】:

我想在使用jsgridview 中添加新行时添加datepicker

我在这里添加了一个新行:

$('.add').on("click",function()
      {
        var new_row="<tr id='"+id+"'>";
        new_row += visit_label;
        new_row += "<td style='width:20px;'></td>";
        new_row += "<td style='width:20px;'></td>";
        new_row += "<td style='width:20px;'></td>";
        new_row += "<td style='width:20px;'></td>";
        new_row += "<td style='width:20px;'></td>";

        new_row += "<td style='width:40px;padding-top:10px;'>";
        new_row += datepicker;
        new_row += "<button id='calendar_button' class='btn' type='button'><i class='icon-calendar'></i></button>";
        new_row += " <button class='btn' id='clearDates'>X</button></br>";
        new_row += " </td>";

        new_row += "<td style='width:60px;'><textarea id='comm' rows='3' style='width:90%;'></textarea></td>";
        new_row += "</tr>";
        $(this).closest('tr').after(new_row);
      });

我想在那里使用datepicker widget,就像我在gridview中使用的一样。

echo DatePicker::widget([
        'name' => 'datepicker', 
        'value' => date('Mon DD YYYY'),
        'options' => ['placeholder' => ''],
        'clientOptions' => [
          'dateFormat' => 'Mon DD YYYY',
          'todayHighlight' => true,
          'autoSize'=>true,
          'showOn'=> "button",
        ]
      ]);

现在我如何在我的外部 JS 文件中使用 datepicker,因为我的 bootstrap datepicker 不起作用。

【问题讨论】:

    标签: jquery twitter-bootstrap gridview datepicker yii2


    【解决方案1】:

    设置:

    $('#calendar_button').datepicker({
        format: 'mm/dd/yyyy',
        startDate: '-3d'
    })
    

    在您的代码中:

        $('.add').on("click",function()
              {
                var new_row="<tr id='"+id+"'>";
                new_row += visit_label;
                new_row += "<td style='width:20px;'></td>";
                new_row += "<td style='width:20px;'></td>";
                new_row += "<td style='width:20px;'></td>";
                new_row += "<td style='width:20px;'></td>";
                new_row += "<td style='width:20px;'></td>";
    
                new_row += "<td style='width:40px;padding-top:10px;'>";
    
                new_row += "<button id='calendar_button' class='btn' type='button'><i class='icon-calendar'></i></button>";
                new_row += " <button class='btn' id='clearDates'>X</button></br>";
                new_row += " </td>";
    
                new_row += "<td style='width:60px;'><textarea id='comm' rows='3' style='width:90%;'></textarea></td>";
                new_row += "</tr>";
                $(this).closest('tr').after(new_row);
                $('#calendar_button').datepicker({
                    format: 'mm/dd/yyyy',
                    startDate: '-3d'
                })
              });
    

    编辑。

    像这样获取价值:

    $("#calendar_button").datepicker(
    {
        onSelect: function()
        { 
            var dateObject = $(this).datepicker('getDate'); 
        }
    });
    

    【讨论】:

    • 谢谢!但是我怎样才能从这里获得价值呢?我已经修改了new_row += "&lt;td style='width:40px;padding-top:10px;'&gt;&lt;input id='calendar_input' style='width:90%;' readonly class='input-small' type='text'&gt;"; 现在如何在输入文本字段中获取日期选择器的值?
    • 在我的回答中查看EDIT 案例/
    猜你喜欢
    • 1970-01-01
    • 2017-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-29
    • 1970-01-01
    • 2020-01-17
    • 1970-01-01
    相关资源
    最近更新 更多