0

我想使用 jQuery .append 将 div 插入另一个父 div,该 div 是列表元素的一部分,由一个动态创建的表单字段组成。虽然父类只包含一个对象(即文本字段)并且在整个文档中只存在一次,但.append 增加了六次div。它适用于 JSfiddle,但不适用于我的本地代码(Magento 形式)。这是为什么?会不会和父类的动态创建有关?

PHP

$input_name     = $this->getInputName();
$input_id       = $this->getInputId();
$input_value    = $this->getValue();
$input_class    = $this->getInputClass();
$label          = $this->getLabel();

<div class="input-box <?php echo $input_id;?>">
 <input type="text" name="<?php echo $input_name;?>" id="<?php echo $input_id;?>" value="<?php echo $this->htmlEscape($input_value) ?>" title="<?php echo $this->__($label); ?>" class="<?php echo $input_class;?>" />
</div>

用 jQuery

$(".input-box.billing_postcode") .append("<div>My Link</div>")

总是导致以下 HTML

<li>
<div class="input-box billing_postcode">
<input id="billing_postcode" class=" input-text required-entry absolute-advice " type="text" title="ZIP" value="" name="billing[postcode]">
<div>My Link</div>
<div>My Link</div>
<div>My Link</div>
<div>My Link</div>
<div>My Link</div>
<div>My Link</div>
</div>

4

1 回答 1

1

这应该解决:

var $element = $(".input-box.billing_postcode");
if($('.foo', $element).length == 0) {
    $element.append('<div class="foo">My Link</div>');
}
于 2012-08-30T18:15:05.943 回答