0

考虑以下 HTML

<fieldset>
    <legend>FOO</legend>
    <div> <!-- this is not static code...it's generated by jQuery-->
        <input type="checkbox" id="chkBox" />
    </div>
</fieldset>

当我运行这个 jQuery

console.log($("#chkBox").parent());

我得到[Fieldset]而不是预期的[div]......我不知道为什么!?

编辑:这里只是一个简短的点......<div>标签是由jQuery生成的......所以实际上,字段集是父级(硬编码)......那么我将如何获得动态创建的父级?

4

2 回答 2

1

您提到<div>标签是动态生成的。如果复选框也不是动态生成的,则会导致添加的<div>标签无法正确包装复选框。

在 Chrome 的Inspect Element工具或任何其他浏览器的等效工具(即 FireBug)中查看内容,并确保动态生成的内容会更改 DOM 以创建您在上述问题中发布的预期输出。

希望这可以帮助。

于 2013-04-03T16:06:06.013 回答
0

您的 HTML 中有错字

<legend>FOO</ledgend>

这可能会导致解析错误,这意味着您的 DOM 不是您认为的那样。

于 2013-04-03T15:48:11.513 回答