我很简单textarea
,我想自定义它的文本(比如添加换行符),这就是我到目前为止所尝试的:
<textarea rows="5" data-bind="value: function(data) { SetDefaultValue(data); }" />
但我什么也没得到。
检查生成的 HTML 时,它没有找到 value 属性并且没有 JavaScript 错误。如何将value
a 的属性绑定textarea
到函数。
我很简单textarea
,我想自定义它的文本(比如添加换行符),这就是我到目前为止所尝试的:
<textarea rows="5" data-bind="value: function(data) { SetDefaultValue(data); }" />
但我什么也没得到。
检查生成的 HTML 时,它没有找到 value 属性并且没有 JavaScript 错误。如何将value
a 的属性绑定textarea
到函数。
你可以这样做:
<textarea rows="5" type="text" data-bind="value: SetValue(firstName)" />
而不是在javascript中:
function AppModel() {
this.firstName = "ebram";
this.lastName = "Tharwat";
this.SetValue = function (data) {
//Do the processing over here
return data.toUpperCase();
}
}
ko.applyBindings(new AppModel());
您需要做的是计算修改您的 textarea 值,如下所示
<textarea rows="5" type="text" data-bind="value:textarea, valueUpdate: 'afterkeydown'" />
function AppModel() {
var self = this;
self.textarea = ko.observable('');
self.SetValue = ko.computed(function(){
self.textarea(self.textarea().toUpperCase());
});
}
示例:http: //jsfiddle.net/YEp2V/3/