未捕获的TypeError:无法读取undefined - bootstrap datepicker的属性'split'

时间:2014-07-16 12:27:23

标签: jquery twitter-bootstrap datepicker

我在bootstrap模式窗口中使用bootstrap datepicker作为输入。当我第一次打开这个窗口时,一切正常,而且datepicker工作正常。当我关闭这个模态窗口并再次打开它时,我的js控制台说Uncaught TypeError: Cannot read property 'split' of undefined

我正在使用ajax在模态窗口中加载表单。

这是我的模态窗口:

<div id="finalModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                <h3 id="myModalLabel">Final date</h3>
            </div>
            <div class="modal-body" id="finalModalBody">

            </div>
            <div class="modal-footer">
                <button id="finalSubmit" class="btn btn-success">Save</button>
            </div>

加载此窗口后,将启动此脚本:

$('.datepicker').datepicker({
           format: "dd.mm.yyyy"
})

这是我的formin模态窗口:

<form>
<p><select onfocus="this.onmousewheel=function(){return false}" class="prereservationSelect" name="prereservation" id="frmfinalForm-prereservation"><option value="89">15. 7. 2014 - 19. 7. 2014</option><option value="0">second date</option></select></p>
<div id="otherDate" style="display: none">
    <p><strong><label for="frmfinalForm-otherDate">Zvolte jiný termín:</label></strong></p>
    <p style="float: left"><input type="text" class="datepicker text" name="otherDate" id="frmfinalForm-otherDate" value=""></p>
    <p style="margin-top: 15px; margin-left: 250px" id="date"></p>
</div>
</form>

感谢您的任何建议。

3 个答案:

答案 0 :(得分:6)

尝试将选择器更改为:

$('#finalModal .datepicker').datepicker({
    format: "dd.mm.yyyy"
})

这为我解决了。

答案 1 :(得分:3)

对我来说,问题是该方法被调用了两次。确保它只被调用一次,你不会有这个错误

答案 2 :(得分:0)

对我来说,添加输入以选择$('input.datepicker'),因为我在代码上还有另一个将datepicker作为类的元素。