1
 <td><img 
    name="Brown Corkboard"
    title="800.00"
    id="nikolas"
    src="materials/corkboardtexture.png"
    alt="600"
    onclick="reply_click(this.src,this.name,this.title,this.alt)"
    width="200"
    height="150"     

我在 HTML 表格中有这张图片。我正在使用属性标题和 alt 来指定执行单击​​图像时调用的函数所需的一些值。

我一定走错路了。我希望在单击图像时将许多不同的变量发送到我的函数。但是我没有选择,因为我已经用完了 title 属性和 alt 属性。有什么建议么?

4

3 回答 3

2

您可以添加任何您想要的任意属性,并将它们用作参数。

<img data-count="1" data-tree="oak" ... onclick=('reply_click(this);')>

或任何你喜欢的。

function reply_click(clicked_thing) {
    var tree = clicked_thing.getAttribute('data-tree');
    console.log(tree);
}

通常我不在onclick我的图像标签中使用,而是使用 javascript 将函数绑定到事件。

于 2013-02-15T22:29:31.657 回答
1

这些天的标准是data-*,例如:

<tr data-id="6"><td data-desc="Test blah blah blah">Test</td></tr>
<tr data-id="7"><td data-desc="Gary the disabled penguin">Gary</td></tr>

是常用的。这取决于您的确切需求,但我通常会建议数据属性

于 2013-02-15T22:29:42.183 回答
1

正如其他人所回答data-的那样,如果您需要在 HTML 属性中携带任意数据,则属性是您的选择。和属性根本不应该用于此类目的,因为这会干扰定义的含义和这些属性的使用alttitle

该示例没有说明为什么您不能简单地将数据写为函数调用中的参数,例如onclick="reply_click(this.src, this.name, 800.00, 600).

或者,您可以在 DOM 内部或外部的 JavaScript 对象中写入数据,并让您的函数直接获取它们,例如使用id属性值作为键。

于 2013-02-15T23:13:49.740 回答