【问题标题】:Cakephp JS helper with jQuery datepicker带有 jQ​​uery 日期选择器的 Cakephp JS 助手
【发布时间】:2013-09-06 20:36:25
【问题描述】:

我使用 Cakephp 2.3.8 从选择框切换到 jQuery datepicker,我想知道是否有一种方法可以在选择日期时使用 JS 助手触发 POST 请求。我发送 POST 请求以查找该特定日期的值。我知道它可以只用 jQuery/AJAX 来完成,但是如果我可以使用 JS 助手,我会更喜欢它,因为我在使用选择框时已经实现了它。

例如,点击输入时会触发请求,但实际选择日期时不会触发

$this->Js->get('#arrival_date')->event('click', //also tried change
    $this->Js->request(array(
        'controller'=>'registration',
        'action'=>'room_number'
        ), array(
        'update'=>'#RegistrationRoomId',
        'async' => true,
        'method' => 'post',
        'dataExpression'=>true,
        'data'=> $this->Js->serializeForm(array(
            'isForm' => false,
            'inline' => true
            ))
        ))
);

我知道我可以让它与这样的东西一起工作,但是由于我从仅使用日期选择框切换到日期选择器,所以我已经为 JS 助手实现了其他所有功能。唯一的问题是让 JS 助手在选择值时触发。

jQuery(function($){
    $(document).ready(function() {
        $("input.datepicker").datepicker({
            onSelect: function(date){
                check_availability(date);
            },
            dateFormat: 'mm-dd-yy',
            yearRange: "-100:+50",
            changeMonth: true,
            changeYear: true,
            constrainInput: false,
            showOn: 'both',
            buttonImageOnly: true
        });
    });
});


function check_availability(date){
    //do stuff here
}

【问题讨论】:

    标签: javascript jquery ajax cakephp datepicker


    【解决方案1】:

    在日期选择器下仍然有一个input 元素,其中包含输入所具有的所有正常事件。

    因此,如果您将其中一个事件绑定到所需的操作而不是 onclick,则事件 onchangeonblur(取决于您想要做什么)将完成这项工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多