2015-03-31 67 views
0

我有一个下拉选择使用户通过一个特定的column.Here的我的代码来搜索一个搜索表单:

<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> 

我也用日期选择器。每当<select>变量的值是日期,我触发日期选择器 ..并禁用它,我认为,我已经使用了这样的事情$("#id").off();但问题是,当删除事件处理程序后的值是日期同样,日期选择器不会弹出。为了进一步了解它,这里是我的jQuery代码:

$('#searchby').on('change', function() { 
if(this.value=="date"){ 
    $("#key_key").on(); 
    $('#key_key').datepicker(); 

} 
else{ 
    // $('#key_key').datepicker("disable"); 
    $("#key_key").off(); 
} 
}) 

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

+0

一旦你使用'.off()',你将不得不重新注册处理程序 – 2015-03-31 08:52:20

+0

我将如何重新注册处理程序?我试过'.on()'只是认为它可能是解决方案,但它不起作用。我真的不知道是否真的有'.on()'函数..我只是试了一下.. – 2015-03-31 08:57:43

+0

[是的存在](https://api.jquery.com/on/)。 – D4V1D 2015-03-31 09:05:22

回答

1

尝试this小提琴。有用。

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

感谢您的想法..我用'$('#key_key')。datepicker(“删除”);'相反..我不知道但''摧毁''没有在我身上工作..也许是因为我用的引导日期选择器。 – 2015-03-31 09:20:08

+0

可能。我没有包括bootstrap。我使用了jQuery ui js和ui css。 – Sukanya 2015-03-31 09:21:11

相关问题