<div class="pad" id="test" contenteditable="true" spellcheck="false">
<div id="a0" class="lines" > text1</div>
</div>
我有一个内容可编辑的div,里面有很多子div,当用户按下ENTER键(使用jQuery)转到下一行时,它会动态生成。子div的例子是上面的一个 id = 'A0'的。
目标:要动态生成唯一ID并将其分配给这些动态生成的子div。
以下是我用来完成此任务的jQuery。
function getSelectedNode()
这是返回用户当前正在键入的行(即子div)的'id'的函数。
var lineCount=0;
lineCount 变量的值等于生成的子div总数。
$(currentLine).next().attr('id','a'+(++lineCount));
此处currentLine
包含用户当前正在键入的行的 id 。按ENTER键,在当前div之后自动生成新div,我尝试使用{{1并尝试使用.next()
为其分配新ID。
如果我在jQuery的selector子句中传递绝对值,即分配新id的过程很有效,即:
$( '#A0')的next()ATTR( 'ID', 'A' +(++ lineCount));
而不是
$(currentLine)的.next()ATTR( 'ID', 'A' +(++ lineCount));
.attr('id','a'+(++lineCount))
答案 0 :(得分:0)
Javascript是单线程的,因此您可以使用int ...
var indexer = 0;
function getUniqueId(){
indexer++;
return indexer.toString();
}
警告:我不建议在大多数Web应用程序中在文档级别声明函数和属性。一旦你掌握了这个方法,它就很容易实现......
$("<div id='myDiv" + getUniqueId() + "' />");