hasClass在我的js代码中不起作用?

jen*_*lie 0 javascript jquery

我想hasClass在下面的代码中使用,但这对我不起作用,请在jsfiddle中查看我的演示并告诉我,我做错了什么?

<span>
    <input type="text" name="relation" class="IdRelation">
</span>
?

if ($('span').hasClass('IdRelation')) {
  alert("ok");
}?
Run Code Online (Sandbox Code Playgroud)

DEMO

Fré*_*idi 11

它不是<span>暴露IdRelation类的元素,而是它的<input>子元素.尝试:

if ($("span input").hasClass("IdRelation")) {
    alert("ok");
}?
Run Code Online (Sandbox Code Playgroud)

或者,取决于您的实际标记:

if ($("span > input").hasClass("IdRelation")) {
    alert("ok");
}?
Run Code Online (Sandbox Code Playgroud)

在第一个代码段选择器将匹配所有<input>那些元件后代一个的<span>元件,而在所述第二片段中的选择器将匹配所有<input>那些元件直接子一个的<span>元件.两者都将匹配<input>示例标记中的元素.