Jquery ui 不切实际的是';t从jQueryUIDatePicker捕获更改
我使用jQueryUI的datepicker和一个实用的模板,双向绑定似乎不能正常工作 我的输入如下所示:Jquery ui 不切实际的是';t从jQueryUIDatePicker捕获更改,jquery-ui,ractivejs,Jquery Ui,Ractivejs,我使用jQueryUI的datepicker和一个实用的模板,双向绑定似乎不能正常工作 我的输入如下所示: <input type="text" value="{{value}}" decorator="picker"> <input type="text" value="{{value}}" as-picker> datepicker显示得很完美,但值没有正确更新。如果我在{{value}}上通过并观察,我看到Ractive认为一旦datepicker设置了值,该值
<input type="text" value="{{value}}" decorator="picker">
<input type="text" value="{{value}}" as-picker>
datepicker显示得很完美,但值没有正确更新。如果我在{{value}}上通过并观察,我看到Ractive认为一旦datepicker设置了值,该值就不会改变。如果我在字段中单击,然后再次后退(失去焦点),观察者将触发,并设置值
在我的decorator中,我可以使用datepickers“onSelect”事件设置一个回调来触发,但是如何从decorator函数强制执行一个实际的更改事件呢
decorators: {
picker: function(node) {
$(node).datepicker({
onSelect: function(dateValue) {
console.log("datevalue set");
//I've tried this already
$(node).change();
//and
$(node).trigger("change");
//neither work
}
});
return {
teardown: function() {
$(node).datepicker("destroy");
}
};
},
}
在decorator函数中,
此
引用当前的ractive实例,因此您可以调用ractive.updateModel()
让它知道需要根据视图更新模型:
decorators: {
picker: function(node) {
var ractive = this
$(node).datepicker({
onSelect: function(dateValue) {
ractive.updateModel()
}
});
return {
teardown: function() {
$(node).datepicker("destroy");
}
};
},
}
(见附件)
编辑 当前版本的ractive使用as-*约定作为装饰器,您应该如下编辑html:
<input type="text" value="{{value}}" decorator="picker">
<input type="text" value="{{value}}" as-picker>
在decorator函数中,
此
引用当前的ractive实例,因此您可以调用ractive.updateModel()
让它知道需要根据视图更新模型:
decorators: {
picker: function(node) {
var ractive = this
$(node).datepicker({
onSelect: function(dateValue) {
ractive.updateModel()
}
});
return {
teardown: function() {
$(node).datepicker("destroy");
}
};
},
}
(见附件)
编辑 当前版本的ractive使用as-*约定作为装饰器,您应该如下编辑html:
<input type="text" value="{{value}}" decorator="picker">
<input type="text" value="{{value}}" as-picker>
ractive不再使用类似的装饰器属性。但是martypdx的建议让我走上了正确的方向
$(函数(){
var r=新的不可复制的({
el:document.body,
模板:“#模板”,
数据:{
值:null
},
装饰师:{
选择器:函数(节点){
变量=这个
$(节点).日期选择器({
日期格式:'年-月-日',
onSelect:函数(日期值){
practive.updateModel()
}
});
返回{
拆卸:函数(){
$(节点).datepicker(“销毁”);
}
};
},
}
})
})
值:{{value}}
ractive不再使用类似的装饰器属性。但是martypdx的建议让我走上了正确的方向
$(函数(){
var r=新的不可复制的({
el:document.body,
模板:“#模板”,
数据:{
值:null
},
装饰师:{
选择器:函数(节点){
变量=这个
$(节点).日期选择器({
日期格式:'年-月-日',
onSelect:函数(日期值){
practive.updateModel()
}
});
返回{
拆卸:函数(){
$(节点).datepicker(“销毁”);
}
};
},
}
})
})
值:{{value}}
这是当前的属性约定,但我认为如果您对以前的答案提出仍然正确的版本会更好:)这是当前的属性约定,但我认为如果您对以前的答案提出仍然正确的版本会更好:)