Unobtrusive に新しいアダプターを追加してみてください。
JQuery UI の代わりに Telerik を使用してタブを作成したため、マークアップが異なって見えます。Validator を通過した後のマークアップは次のようになります (つまり、Unobtrusive スクリプトによって検証エラーが挿入されます)。
<div id="rItemTabs">
<ul>
<li><a href="#rItemTabs-1">Tab 1</a></li>
<li><a href="#rItemTabs-2">Tab 2</a></li>
</ul>
<!-- End Tab Nav-->
<!-- Begin Tab Contents -->
<div id="rItemTabs-1">
<div class="editor-label">
<label for="Title">Title</label>
</div>
<div class="editor-field">
<input id="Title" class="input-validation-error name="Title">
<span class="field-validation-error">*</span>
</div>
</div>
<div id="rItemTabs-2">
<div class="editor-label">
<label for="Title">Title</label>
</div>
<div class="editor-field">
<input id="Title" class="input-validation-error name="Title">
<span class="field-validation-error">*</span>
</div>
</div>
</div>
このスクリプトの目的は、「Tab Contents」の各 div を調べて、「field-validation-error」クラス (エラーが発生した場合にのみ存在するはずです) を探し、このクラスが見つかった場合は色を変更することです。関連するタブ ナビゲーション アイテム (つまり、タブ コンテンツの ID は、タブ ナビゲーション アイテムの href と同じです)。
$.validator.unobtrusive.adapters.add(
'tab-validation',
function () {
var tabs = $('#rItemTabs [id*=rItemTabs]');
$(tabs).each(function () {
if ($(this).has('.field-validation-error').length) {
var tabId = '#' + $(this).attr('id');
$('a[href=' + tabId + ']').css({ 'color': 'red', 'font-weight': 'bolder' });
}
});
} (jQuery));
これが理にかなっていて、あなたにとってうまくいくことを願っています。