我在隐藏字段的表单上使用jQuery Datepicker,然后单击链接以编辑值。
<a class="pickDate edit-link" id="reqSubmitDate">Thu, Feb 27, 2014</a>
<input type="hidden" value="Thu, Feb 27, 2014" id="reqSubmitDateinput" name="RequisitionSubmitDate" class="hasDatepicker">
我在隐藏输入上启动了datepicker。
$('#reqSubmitDateinput, #orderAckDateinput, #deliveryDateinput').datepicker();
单击该链接,它会打开其匹配输入的日期选择器。
$('.pickDate').click(function () {
var id = $(this).attr('id');
var input = id + 'input';
$('#' + input).datepicker('show');
});
然后它使用我设置的默认值来获取用户选择的日期,并设置隐藏输入的值。
$.datepicker.setDefaults({
minDate: 0,
onSelect: function (date) {
var id = $(this).attr('id');
id = id.slice(0, -5);
$('#' + id).text(date);
}
});
它似乎在前两个方面工作正常,但在最后两个方面没有工作,尽管只有ID不同并且符合相同的格式。我明白了:
TypeError: n is undefined jquery.....min.js (line 5)
似乎停止显示选择器。
我尝试将前两个移动到那个没有工作的那个之后,看看它是否存在多少问题,而不是它。我也尝试将非工作区域移到其他区域附近。没有运气。
按要求提供jsfiddle:http://jsfiddle.net/ZGD6B/
答案 0 :(得分:2)
我使用jquery的隐藏字段遇到了类似的问题。我通常使用hack隐藏字段以使jQuery合作:
<input style="height: 0px; width:0px; border: 0px;" id="deliveryDateinput" name="DeliveryDate" value="@Model.GEP.OrderDeliveryDate" />