【发布时间】:2015-03-19 05:22:27
【问题描述】:
我有一个可滚动的引导模式,我知道内容太长而不能成为模式,但我对此无能为力。
问题是我在该模态中有一个 jQuery 日期选择器,但它以主体为父级,并且仅随主体而不是模态滚动。我希望日期选择器在模式中滚动时保持原位。
我已经尝试了一些技巧,将模态的位置从固定到绝对,但如果日期选择器将主体作为其父级,则它将不起作用。
模式正在被 MVC 调用:
@Helpers.modal_common(
modalId = "someid",
modalTitle = "sometitleforthemodal"
) {
我正在调用日期选择器:
<label class="control-label col-sm-3"> Date: </label>
<div class="col-sm-5" data-bind="validationOptions:{ insertMessages: false }">
<div class='input-group date' data-bind="newdatetimepicker: expiry,
dateTimePickerOptions: {format: 'MM/DD/YYYY', pickTime: false}">
<input type='text' readonly class="form-control" />
<span class="input-group-addon">
<span class="fa fa-calendar"></span>
</span>
</div>
</div>
新的日期时间选择器代码:
ko.bindingHandlers.newdatetimepicker = {
init: function (element, valueAccessor, allBindingsAccessor) {
allBindings = allBindingsAccessor();
var options = {
format: 'MM/DD/YYYY',
defaultDate: ko.utils.unwrapObservable(valueAccessor())
};
ko.utils.extend(options, allBindings.dateTimePickerOptions)
$(element).datetimepicker(options).on("change.dp", function (evntObj) {
var observable = valueAccessor();
if (evntObj.timeStamp !== undefined) {
var picker = $(this).data("DateTimePicker");
var d = picker.getDate();
observable(Date.parse(d));
}
});
},
update: function (element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
$(element).data("DateTimePicker").setDate(value);
}
};
这是我正在谈论的代码笔示例http://codepen.io/anon/pen/bNWvRv
任何帮助都会很棒!
【问题讨论】:
标签: jquery twitter-bootstrap model-view-controller knockout.js playframework