0

我需要通过 jQuery 在表单中定位纯文本,这样我就可以在它周围加上一个标签。表单本身是由我无法编辑的外部插件创建的。由于插件可能会更改输入的 id、值和名称,因此我不能将它们作为选择器。这就是让我感到困难的原因。

这是一个示例代码:

<form method="post" action="#" name="process213">
    <input id="page_action327" type="hidden" value="confirmation" name="page_action">
    <input id="special108" type="hidden" value="coupon" name="special">
    Text
    <input id="coupon_code" type="text" maxlength="20" name="coupon_code">
    <input type="submit" value="Einlösen" title="Einlösen">
</form>

我需要定位“文本”。有没有人知道如何在不使用上述属性的情况下实现这一目标?谢谢!

4

1 回答 1

2

你需要这样的东西:

$('form[name=process213]').contents().filter(function(){
    return this.nodeType === 3 // Node.TEXT_NODE
}).wrap('<label />');

更新

然后要删除空标签,您可以这样做:

$( 'form[name=process213] label:empty' ).remove();
于 2013-10-30T16:11:10.317 回答