使用knockout的“占位符”属性 - JSON

时间:2015-05-28 17:17:15

标签: javascript html json knockout.js

我想使用data-bind使用占位符属性,但我有一条错误消息([object object])。请让我知道如何使用它。

HTML:

input id="comments" class="form-control" 
data-bind="attr: { placeholder: { locale: 'placeholder.comments', auth: false } }"

JSON:

"placeholder": {
    "comments": "Tell us..."
}

3 个答案:

答案 0 :(得分:1)

占位符属性应该是字符串(ko.observable),而不是对象。

<input data-bind="attr:{placeholder:hintText}" />

简单示例: http://jsfiddle.net/xtdL7om1/

答案 1 :(得分:0)

你可以像这样创建一个bindingHandlers:

ko.bindingHandlers.placeholder = {
    init: function (element, valueAccessor) {
        var observable = valueAccessor();
        ko.applyBindingsToNode(element, { attr: { placeholder: observable } });
    }
};

你必须在HTML中使用这样的

<input id="test" data-bind="placeholder: yourPlaceHorder, textInput: yourValueInput" />

答案 2 :(得分:0)

<input widgetLocaleText: {value:'nameOnCardPlaceholder', attr:'placeholder'},