ped*_*ete 6 jquery-ui-datepicker
我有一个形式的两个日期选择器.它们有不同的id,所以这不应该与类似的错误相关. jQuery的.将选择器应用于动态表单中的每个字段
我在firebug中遇到的错误是'未捕获的异常:缺少此datepicker的实例数据'
当我从'#copyTo'datepicker中选择一天时触发了这一点,该日期选择器是表单上的第二个日期选择器.第一个datepicker工作得很好.
我的形式是
<form name="copy" action="copyEvents.php" method="post"> <input type="hidden" id="copyFromHid" name="copyFromHid"/> <input type="hidden" id="copyToHid" name="copyToHid"/> Copy From <input id="copyFrom" name="copyFrom"/> Copy To <input type="text" id="copyTo" name="copyTo"/> <input type="hidden" name="gid" id="gid"/> <input type="submit" value="copy"/> </form>
jquery是
jQuery('input#copyFrom','div#copyFromHistory form')
.datepicker({
altField: 'input#copyFromHid',
altFormat: 'yy-mm-d',
dateFormat: 'd MM yy',
firstDay: 1,
beforeShowDay: function(date) {
return (date.getDay() == 1) ? [true, ""] : [false, ""]; }
});
jQuery('input#copyTo','div#copyFromHistory form')
.datepicker({
altField: 'input#copyToHid',
altFormat: 'yy-mm-d',
dateFormat: 'd MM yy',
firstDay: 1,
beforeShowDay: function(date) {
return (date.getDay() == 1) ? [true, ""] : [false, ""]; }
});
Run Code Online (Sandbox Code Playgroud)
有关为什么第一个字段可以工作的建议,而不是第二个字段的建议?
易于解决,将代码更改为以下内容:
$('.date').live('focus', function(){
$(this).datepicker({
changeMonth: true,
changeYear: true,
yearRange: '1930:'+(new Date).getFullYear()
});
});
Run Code Online (Sandbox Code Playgroud)
我想到两件事:
其中之一位于 jQuery 选择器中:
jQuery('input#copyFrom','div#copyFromHistory form')
jQuery('input#copyTo','div#copyFromHistory form')
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,您都会传递 context/ownerDocument 参数jQuery(),但它正在寻找 DOM 元素或文档...而不是字符串。
第二件事是:
Copy From <input id="copyFrom" name="copyFrom"/>
Copy To <input type="text" id="copyTo" name="copyTo"/>
Run Code Online (Sandbox Code Playgroud)
复制到有type="test"而复制自没有(虽然默认输入类型是文本......所以可能不是这样)
我怀疑你真的想要:
jQuery('input#copyFrom').datepicker(....)
jQuery('input#copyTo').datepicker(....)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21912 次 |
| 最近记录: |