我在像这样的链接上为用户设置数据属性
<input type="button" class="btn" data-user={"user": "<%= @user.name %>"} value="Start" id="game">
在侦听click事件的javascript函数中,我做了console.log(e.target)
并将整个内容打印到控制台。
<input type="button" class="btn" data-user={"user": "<%= @user.name %>"} value="Start" id="game">
如果我执行console.log(e)
,即没有e.target,则会记录jquery事件,但数据属性未定义
data: undefined
我正在尝试从数据属性中提取用户名,但不知道如何从此
获取用户名<input type="button" class="btn" data-user={"user": "<%= @user.name %>"} value="Start" id="game">
我不知道为什么在我只记录事件时数据是未定义的。
如果你能帮助我,我将非常感激。提前致谢。
答案 0 :(得分:4)
您的HTML是......独一无二的?而不是:
data-user={"user": "<%= @user.name %>"}
试试这个:
data-user="<%= @user.name %>"
然后你可以用标准的jQuery .data()技术获取数据(因为你提到了jQuery):
var user = $('#game').data('user');
答案 1 :(得分:0)
您可以按如下方式访问DOM对象中的数据:
var data = $(e.target).attr("data-user");