这是我的代码http://jsfiddle.net/amolw/6kdHG/按钮是动态创建的(通常,按钮的数据将通过AJAX请求获得)。为简单起见,我对这些值进行了硬编码。
我的问题是我执行此thisHotel = $(this).data('hname');
我在变量thisHotel
中未定义。如果我用锚标记替换按钮,也会发生同样的事情。
最佳答案
您的示例中的this
是div 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
是触发的事件,您只需访问它的目标即可。