更改div – jQuery的内容

当点击链接之一时,怎么可能改变这个div的内容?

<div align="center" id="content-container"> <a href="#" class="click cgreen">Main Balance</a> <a href="#" class="click cgreen">PayPal</a> <a href="#" class="click cgreen">AlertPay</a> </div> 

您可以订阅链接的.click事件,并使用.html方法更改div的内容:

 $('.click').click(function() { // get the contents of the link that was clicked var linkText = $(this).text(); // replace the contents of the div with the link text $('#content-container').html(linkText); // cancel the default action of the link by returning false return false; }); 

但是,请注意,如果您replace此div的内容,则您分配的点击处理程序将被销毁。 如果您打算在需要附加事件处理程序的div中注入一些新的DOM元素,则应在插入新内容后在.click处理程序中执行此附件。 如果事件的原始select器被保留,你也可以看一下.delegate方法来附加处理器。

有2个jQuery函数,你会在这里使用。

1) click 。 这将采取一个匿名函数,因为它是唯一的参数,并将单击元素时执行它。

2) html 。 这将需要一个htmlstring作为唯一的参数,并将用所提供的htmlreplace元素的内容。

所以,就你而言,你会想要做到以下几点:

 $('#content-container a').click(function(e){ $(this).parent().html('<a href="#">I\'ma new link</a>'); e.preventDefault(); }); 

如果你只想添加内容到你的div,而不是取代它的一切,你应该使用append

 $('#content-container a').click(function(e){ $(this).parent().append('<a href="#">I\'ma new link</a>'); e.preventDefault(); }); 

如果您希望新添加的链接在点击时添加新内容,则应使用事件委派 :

 $('#content-container').on('click', 'a', function(e){ $(this).parent().append('<a href="#">I\'ma new link</a>'); e.preventDefault(); }); 
 $('a').click(function(){ $('#content-container').html('My content here :-)'); }); 

尝试$('#score_here').html=total;