1

我在这样的链接上为用户设置了数据属性

  <input type="button" class="btn" data-user={"user": "<%= @user.name %>"}  value="Start" id="game">

在侦听单击事件的 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">

而且我不知道为什么当我只记录事件时数据未定义。

如果您能在这方面帮助我,我将不胜感激。提前致谢。

4

2 回答 2

4

您的 HTML 是……独一无二的?而不是这个:

data-user={"user": "<%= @user.name %>"}

试试这个:

data-user="<%= @user.name %>"

然后您可以使用标准的 jQuery .data()技术获取数据(因为您提到了 jQuery):

var user = $('#game').data('user');
于 2013-03-13T21:59:44.307 回答
0

您可以从 DOM 对象访问数据,如下所示:

var data = $(e.target).attr("data-user");
于 2013-03-13T22:00:13.873 回答