使用javascript datepicker时未触发.change函数

时间:2012-12-03 09:57:47

标签: jquery ajax

我有.change jQuery函数。除一个文本字段外,所有工作都正常。该文本字段将从包含日历的小弹出窗口接收输入。它实际上是一个日期选择器。但是,当我单击任何特定日历时,似乎该功能未检测到更改。但如果我手动设置日期,它就可以了。我尝试阅读jQuery文档但无法找到答案。是因为仅在我们使用键盘输入输入时才会触发.change功能吗?

先谢谢你们。

我的jquery代码

$(document).ready(function(){

    $(".edit_tr").click(function(){

        var ID=$(this).attr('id');

        $("#first_"+ID).hide();
        $("#first_input_"+ID).show();
        var first=$("#first_input_"+ID).val();
        alert('content: '+first);

    }).change(function(){
        alert('change');
        });
  });

我的HTML代码:

<tr id = "<?php echo $id; ?>_6" bgcolor='#f2f2f2' class='edit_tr'>
    <td><span class="pro_text-form"><font color="red">*</font> Date of Birth </span></td>
    <td class="edit_td">
    <span id="first_<?php echo $id; ?>_6" class="text"><?php echo $dob; ?></span>
    <input type="hidden" value="<?php echo $dob; ?>" class="editbox" id="hidden_first_input_<?php echo $id; ?>_6" />
    <input type="text" class="editbox" name="open_date" id="first_input_<?php echo $id; ?>_6" value="<?=$dob?>" size="10" />
    <a href="javascript:NewCal('first_input_<?php echo $id; ?>_6','ddmmyyyy')"><img src="images/cal.gif" width="16" height="16" border="0" alt="Pick a date"></a>
   </td>
</tr>

伙计们,我的问题解决了!我决定改为jquery日历,它的工作非常好。正是我在寻找的东西。但请记住,确保jquery.js没有冲突。我遇到了这个问题,我的日历没有显示出来。欢呼声。

2 个答案:

答案 0 :(得分:1)

是的,当值发生变化时,模糊会触发更改。 jQuery的datepicker有一个类似你可以绑定的变化事件。

http://api.jqueryui.com/datepicker/#option-onSelect

答案 1 :(得分:0)

尝试使用JqueryUI中datepicker触发的onSelect事件。

$("#myPicker").datepicker({
  onSelect: function(dateText) {
    alert(dateText);
  }
});

http://api.jqueryui.com/datepicker/#option-onSelect