0

現在、 https://github.com/ericmbarnard/Knockout-Validationの検証プラグインを使用しており、入力ボックスなどのプレーンな値フィールドで正常に機能していますが、先行入力フィールドに表示される検証メッセージを取得できません。

タイプアヘッドが割り当てられているオブザーバブルには、必要な検証ルールが割り当てられており、プラグインはそれを検証できます。たとえば、空白の場合、isValid()を呼び出すとfalseが返されますが、検証メッセージは表示されません。

私の先行入力カスタムバインディングは次のとおりです。

ko.bindingHandlers.typeahead =
init: (element, valueAccessor) ->
    binding = this
    elem = $(element)
    value = valueAccessor()
    elem.typeahead(
        source: ->
            ko.utils.unwrapObservable(value.source)
        onselect: (val) ->
            value.target val
        )

    elem.change ->
        value.target elem.val()

update: (element, valueAccessor) ->
    elem = $(element)
    value = valueAccessor()
    elem.val value.target()

次のように使用されます:

<input type="text" data-provide="typeahead" data-items="4" data-bind="typeahead:  { target: selectedValue, source: sourceValues}" />

githubの問題に関する1つの投稿でko.bindingHandlers.validationCore.init(element, valueAccessor)は、バインディングのinitセクションの最後に貼り付けることを提案していますが、これは何の役にも立たないようです。

4

0 に答える 0