【发布时间】:2010-02-08 15:36:08
【问题描述】:
我有一个 HTML sn-p 如下,我想获取 'article-form' div,克隆它,并增加属性 for、id 的数字em> 和 名称。
<div class="article-form">
<label for="id_form-0-section">Section:</label>
<select id="id_form-0-section" name="form-0-section">
<option selected="selected" value="">---------</option>
<option value="1">News</option>
<option value="2">Originals</option>
</select>
<label for="id_form-0-slug">Slug:</label>
<input type="text" maxlength="255" name="form-0-slug" id="id_form-0-slug">
<input type="hidden" id="id_form-0-collection" name="form-0-collection">
<input type="hidden" id="id_form-0-order" name="form-0-order">
<input type="hidden" id="id_form-0-id" name="form-0-id">
</div>
到目前为止,我有克隆部分,但我需要将我克隆的内容进行遍历,其中的元素具有 for、id 和 属性名字。
var $articeForm = $('.article-form').clone();
让我补充一下,增量部分不是问题。我打算做以下事情。我不确定按属性遍历的最佳方法是什么。
var newNumber = parseInt($('#id_form-0-id').attr('id').split('-')[1]) + 1;
还有一点,从 0 开始的事实是没有意义的,在某些情况下它可以从 5 开始,然后接下来的字段应该是 6。
【问题讨论】:
-
你在混合变量名吗? $varName 是 PHP,你在 javascript 上使用它。
-
在变量名的开头使用
$是有效的Javascript,也是表示该变量是一个jQuery 对象的好方法。 -
@jpabluz - 不,以这种方式命名 JavaScript 变量是可以接受的。此外,将 $ 附加到存储 jQuery 对象的任何变量的前面是一种很好的做法。
标签: javascript jquery