两端javascript代码都可以单独运行,放在一起后放在前面的能运行,后面的一个就不运行了。本人对javascript理解不深,一直没能调出来。有哪位高手能帮我下,很感谢。
第一段放在了js文件里进行调用
1 $(document).ready(function () { 2 $.validator.addMethod('date', 3 function (value, element) { 4 if (this.optional(element)) { 5 return true; 6 } 7 var valid = true; 8 try { 9 $.datepicker.parseDate('dd/mm/yy', value); 10 } 11 catch (err) { 12 valid = false; 13 } 14 return valid; 15 }); 16 var today = new Date(); 17 var d = new Date(); 18 d.setMonth(d.getMonth() + 2); 19 $(".datetype").datepicker({ dateFormat: 'dd/mm/yy', minDate: today, maxDate: d }); 20 });
这里面关于jquery-ui的datepicker属性的一些设置,需要的引用都已完成。
第二段javascript片段在此之后
1 <script type="text/javascript"> 2 $(function () { 3 $('#DOB').datepicker({ 4 onSelect: function (date) { 5 alert(date); 6 } 7 }); 8 }) 9 </script>
这段只实现简单测试,当选择日期即显示出来
在用firbug调试时页面加载上面代码运行到第四行停,然后在页面输入日期,这时本该执行第五行却没执行。。
谁能给点解释或者提示或者任何建议都将非常感激!
在第二段代码执行前,检查一下你的$('#DOB')对象是否有class="hasDatepicker",datepicker为了防止重复注册,会检测对象是否已注册过。如果你第一段代码已经给该对象注册过datepicker了,那么第二个注册代码会成功执行,但实际是不会重新注册的。
onSelect怎么看都像是当你选择日期之后触发.你断点打在5上,选一下日期,能进断点不
onSelect应该是没有触发吧!,用google调试,比较方便点!