在jquery中读取动态创建的元素数据属性?

这是我的代码http://jsfiddle.net/amolw/6kdHG/
按钮是动态创建的(通常按钮的数据将通过AJAX请求)。 为简单起见,我对这些值进行了硬编码。
我的问题是当我执行this thisHotel = $(this).data('hname'); 我在变量thisHotel未定义。
如果我用锚标签替换按钮会发生同样的事情。

在您的示例中, thisdiv id=hotels 。 如果你已经进入了div并选择了按钮,它会工作。 我提出了另一个解决方案。

http://jsfiddle.net/6kdHG/3/

您可以使用事件的目标来获取所需的信息。

 $("[id^='hotel']").on('click', function (e) { thisHotel = $(e.target).data('hname'); $("#selected").html("Selected Hotel " + thisHotel); }); 

e是被触发的事件,您只需访问它的目标。