我還沒有使用Knockout驗證,我試圖感受一下它可以做些什麼。敲除驗證自定義消息模板的問題
我想弄清楚是否有可能顯示一個圖標,而不是錯誤消息在輸入標記的右側出現錯誤。而且,如果用戶將鼠標懸停在圖標上,則會顯示錯誤消息。
有沒有人做過這個或有一個如何做到這一點的想法?
謝謝。
編輯:
說我在我的視圖模型以下(什麼我試圖做更詳細的例子):
var firstName = ko.observable().extend({required: true});
我的HTML:
<input data-bind="value: firstName" />
我的理解是,如果名字文本框留空,那麼(默認情況下)會在文本框右側顯示一些文本,指出該字段是必需的。
我試圖瞭解是如何改變右邊顯示錯誤文本上,當鼠標懸停,會彈出錯誤信息正確顯示圖標的默認行爲。
所以,一開始會是這樣的:
<div data-bind="validationOptions: {messageTemplate: 'myCustomTemplate'}">
<input data-bind="value: firstName" />
<input data-bind="value: lastName" /> //also required
</div>
<div id='myCustomTemplate'>
//This icon should only display when there is an error
<span class="ui-icon ui-icon-alert" style="display: inline-block"/>
//css/javascript would display this when user hovers over the above icon
<span data-bind="validationMessage: field" />
</div>
我不知道如果我正確使用messageTemplate功能。我也不知道該如何將文本綁定到customTemplate中,以便爲每個錯誤顯示正確的錯誤消息。 IOW,名字和姓氏可能有自定義錯誤消息。如果他們都使用相同的模板,模板如何容納自定義錯誤消息?
我希望這是有道理的。
一些代碼將有助於解決方案以適應您的需求,但得到的答覆是肯定的。 Knockout允許您使用可用於覆蓋默認錯誤文本(https://github.com/ericmbarnard/Knockout-Validation/wiki/Validation-Bindings)的validationMessage屬性設置自定義div或span標籤。除此之外,您可以爲您的觀察對象設置一個自定義驗證器功能,如果發現錯誤,它可以激活/停用工具提示。如果您可以向我們展示一些示例代碼(最好是在小提琴中),我們可以幫助您進行所需的更改,使其按您想要的方式工作。 – 2013-01-07 22:39:10
感謝您的回覆,感謝您的延遲......幾個假期。我添加了一個編輯,以更全面地解釋我所追求的。 – RHarris