如何在使用$("#id")之后启用事件处理程序.off();

时间:2015-03-31 08:51:23

标签: javascript jquery datepicker

我有一个带有下拉选项的搜索表单,用户可以按特定列进行搜索。这是我的代码:

<form action="<?php echo site_url('admin/home/search');?>" method="post" accept-charset="utf-8"> 
<div class="pull-left" style="margin-left:150px" >  
    <select class="form-control pull-left" name="searchby" id="searchby" >
        <option class="label">- Search by -</option>
        <option value="name">Name</option>
        <option value="address">Address</option>
        <option value="date">Date</option>
    </select> 
</div>    
<div class="pull-right" style="margin-left:10px">
    <div class="input-group date col-sm-12">
        <input type="text" class="form-control" placeholder="Search " name="key_key" id="key_key" required /> 
        <div class="input-group-btn">
            <button class="btn btn-md" type="submit"><span class="fa fa-search"></span></button>
        </div>
    </div>
</div> 

我也使用过datepicker。每当<select>标记的值为日期时,我会触发 datepicker ..并且要禁用它我认为,我使用了类似{{1}的内容但问题是,当删除事件处理程序后的值再次为 date 时,日期选择器不会弹出。为了进一步理解它,这里是我的jquery代码:

$("#id").off();

任何人都可以帮助我吗?在此先感谢:)

1 个答案:

答案 0 :(得分:1)

尝试this小提琴。它有效。

$(document).ready(function () {
    //$('#key_key').datepicker();
 $('#searchby').on('change', function () {
        if (this.value == "date") {            
            $('#key_key').datepicker();
        } else {
            $('#key_key').datepicker("destroy");
        }
    });   
});