jqueryで、最も近い親要素がノードのタイプ、つまり<li>, <div>, <p>, etc
クラス名であるかどうかを確認するにはどうすればよいですか?
以下のコードを作成しましたが、動作しません。
var msgSpan = $('<span/>', {class: 'msg'});
function checkField(field) {
if (field.closest('li')) {
console.log('Parent is an Li');
field.closest('li').addClass('error').find('.input').before(msgSpan);
} else if (field.closest('.parent')) {
console.log('Parent is a class called .parent');
field.closest('.parent').addClass('error').find('.input').before(msgSpan);
}
}
// Usage
checkField($('input[type="text"]');
HTML:
<form id="search-jobs">
<fieldset class="parent">
<label for="jobs_search">Search jobs</label>
<div class="input left">
<input type="text" id="jobs_search" name="jobs_search" class="required" placeholder="Search jobs" />
</div>
<div class="btn-cont left">
<input type="submit" id="" name="" class="button" value="Search" />
</div>
</fieldset>
</form>
どうもありがとう