1

我使用 jQuery 添加新的 div append(),并且我希望能够获得最后一个 div 和以前的 div 的各个内容和属性onclick

<!DOCTYPE html>

<script type='text/javascript'>
$(document).ready(function(){

$('#ClickDiv').live("click",function(){

IaNm=prompt("Enter Name","Name here...");
IaLang=prompt("Enter Lang","Lang here...")

$('.box:last').append('<div class="box" lang="'+IaLang+'">'+IaNm+'</div>')
})
$('.box').click(function(){
LstNm=$(this).text()
LstT=$(this).attr('lang')
$('b').html(LstNm+' : '+LstT)

})
})    


</script> 
<input type='button' value='New Div' id='ClickDiv'>
<div class='box' lang='en'>one</div>
<div class='box' lang='fr'>two</div>
<div class='box' lang='de'>three</div>

<b></b>
4

2 回答 2

3

您需要更改此行:

$('.box').click(function(){

$('.box').live( "click", function(){

如果您想捕获在文档加载事件之后添加的新元素的单击事件

编辑:更改$('.box:last').append( ... )为,$('.box:last').after(... )以便在 las elment 之后添加新元素,而不是在其中

于 2012-04-13T19:39:55.687 回答
0

要创建代码块或其他预格式化文本,请缩进四个空格:

This will be displayed in a monospaced font. The first four spaces
will be stripped off, but all other whitespace will be preserved.

Markdown and HTML are turned off in code blocks:
<i>This is not italic</i>, and [this is not a link](http://example.com)

要创建不是块,而是内联代码跨度,请使用反引号:

字符$只是. window.jQuery如果你想在列表中有一个预先格式化的块,缩进八个空格:

  1. 这是正常的文字。
  2. 这也是如此,但现在遵循一个代码块:

    Skip a line and indent eight spaces.
    That's four spaces for the list
    and four to trigger the code block.
    
于 2015-10-08T07:54:02.303 回答