divベースのselectフォーム要素でjQuery検証ライブラリを使用したいと思います。ドロップキックライブラリを使用して選択を美化していますが、選択要素がDIVSで再作成されるため、フォームの検証に問題があります。
<select id="permissionGroup" class="dropkick" name="permissionGroup" style="display: none;">
<option selected="selected" value="">
Please Select
</option>
<option value="1">
Admin
</option>
<option value="2">
Auditor
</option>
</select>
上記の選択フィールドは、以下のhtmlに変換されます。
<div id="dk_container_permissionGroup" class="dk_container dk_theme_default" tabindex="" style="display: block;">
<span class="value"><a class="dk_toggle" style="width: 131px;"><span class=
"dk_label">Please Select</span></a></span>
<div class="dk_options" style="top: 29px;">
<ul class="dk_options_inner">
<li class="dk_option_current"><a data-dk-dropdown-value="">Please Select</a></li>
<li class=""><a data-dk-dropdown-value="1">Admin</a></li>
<li class=""><a data-dk-dropdown-value="2">Auditor</a></li>
</ul>
</div>
バリデーター用に次のカスタムメソッドを作成しましたが、フォーム検証プロセスに適用する方法がわかりません。
$.validator.addMethod(
"permissionGroupCheck",
function(value, element){
var spanValue = $("#dk_container_permissionGroup span.dk_label").text();
if(spanValue == "Please Select"){
return false;
}else{
return true;
}
}
);