2015-07-03 15 views
2

如何將量程驗證消息配置爲高於或低於元素? 目前,他總是在元素下創建。敲除驗證 - 配置位置(頂部或底部)跨度錯誤

編輯

Sample jsfiddle

步驟:

  1. 單擊按鈕
  2. 檢查的第一個名字輸入

看到跨度低於輸入。

HTML

<input type="text" data-bind="textInput: firstName"> 
<span class="validationMessage">This field is required.</span> 

可以配置在淘汰賽驗證插件跨越的位置?

+0

你的問題是不清楚的。你能提供你的代碼的例子嗎?什麼是跨度驗證消息,它是某種組件 - 也許你可以提供一個鏈接? – Olga

+0

@Olga,提供鏈接。 – Gus

+0

很好,我沒有太多補充Anish的答案 - 插件文檔說'如果你想定製你的對象驗證消息的顯示,使用validationMessage綁定'請參閱文檔鏈接https:// github .com/ericmbarnard /敲除驗證 – Olga

回答

1

您可以使用validationMessage綁定來提供您自己的標記並關閉插入的消息。

<div class="row"> 
    <p class="validationMessage" data-bind="validationMessage: firstName"></p> 
    <label>First name:</label> 
    <input type="text" data-bind="textInput: firstName" /> 
</div> 
<button type="button" data-bind='click: submit'>Click me</button> 

ko.validation.init({ 
    registerExtenders: true, 
    messagesOnModified: true, 
    insertMessages: false, 
    parseInputAttributes: true, 
    messageTemplate: null 
}, true); 

檢查更新fiddle

+0

在我的風景這不是一個好主意。 – Gus

+0

你的場景是什麼? –

0

我的臨時解決方案:

重寫InsertValidationMessage。

$ko.validation.insertValidationMessage = function (element) { 
    var span = document.createElement('SPAN'); 
    span.className = "validationMessage"; 
    element.parentNode.insertBefore(span, element); 
    return span; 
}; 

This functionality已經在Knockout驗證小組的計劃中。

Fiddle

相關問題