有时用户会手动填写输入本地,姓名,年龄等,或者他们会自动调用ajax并填写。 我试图在json请求后动态更新字段:
$.getJSON(url, function (well) {
if (well) {
$("[name=local]").attr({'value': well.local, disabled: true})
$("[name=name]").attr({'value': well.name, disabled: true})
$("[name=age]").attr({'value': well.age, disabled: true})
}
}
当我输入姓名+年龄
时,有些字段会自动填满<g:textField name="local" value="${well.local}" data-bind="value: local"/>
<g:textField name="name" value="${well.name}" data-bind="value: name"/>
<g:textField name="age" value="${well.age}" data-bind="value: age"/>
<g:textField name="nameAge" value="${well.nameAge}" disabled="disabled" data-bind="value: nameAge, attr:{ 'value': nameAge}""/>
<g:hiddenField name="nameAge" data-bind="value: nameAge, attr:{ 'value': nameAge}"/>
这在json放置值之后无法工作,但只能输入。
self.nameAge= ko.computed(function () {
return self.name() + " - " + self.age();
});
我能为这项工作做些什么?
答案 0 :(得分:0)
尝试从元素中获取视图模型,例如:
$.getJSON(url, function (well) {
if (well) {
var vm=ko.dataFor($("[name=local]")[0]);
vm.local(well.local);
vm.age(well.age);
vm.name(well.name);
}
}
或者你可以试试这个(我不确定):
$.getJSON(url, function (well) {
if (well) {
$("[name=local]").attr({'value': well.local, disabled: true}).change()
$("[name=name]").attr({'value': well.name, disabled: true}).change()
$("[name=age]").attr({'value': well.age, disabled: true}).change();
}
XD