使用jquery onclick on span

时间:2012-11-21 13:00:01

标签: jquery

我有以下HTML:

<a title="Prev" data-event="click" data-handler="prev" class="ui-datepicker-prev ui-corner-all">
       <span class="ui-icon ui-icon-circle-triangle-w">Prev</span>
   </a>

我需要在使用jquery点击span后更改'Prev'。

这是我的代码:

$(".ui-icon.ui-icon-circle-triangle-w").click(function(){ 
    $(".ui-icon.ui-icon-circle-triangle-w").html('«');         
});

但它不起作用,为什么?

3 个答案:

答案 0 :(得分:8)

也许你的代码执行得太早了。并且在执行代码时,您的html元素不存在。所以$(".ui-icon.ui-icon-circle-triangle-w")只是空的。

您可以使用:

$("body").on('click', ".ui-icon.ui-icon-circle-triangle-w", function(){ 
    $(this).html('«');         
});

答案 1 :(得分:3)

给你的<span>一个班级:

<a title="Prev" data-event="click" data-handler="prev" class="ui-datepicker-prev ui-corner-all">
       <span class="prevSpan ui-icon ui-icon-circle-triangle-w">Prev</span></a>

然后通过jQuery使用它:

$(".prevSpan").text("«");

点击事件需要一个事件处理程序,请使用.on()
最后代码:

$(document).ready(function(){
  $('.prevSpan').on('click',function(){
    $(".prevSpan").text("«");
  });
});

.on()eventhandler http://api.jquery.com/on/

的文档

答案 2 :(得分:0)

$(".ui-icon .ui-icon-circle-triangle-w").click(function(){ 
    $(this).html('«');         
});