在锚标记中添加JavaScript的替代方法

时间:2013-10-07 19:35:10

标签: javascript jquery html

您好StackOverflow社区。我有一个关于在HTML锚标记的href中添加JavaScript的替代方法的问题。我已经知道这是不好的做法,而不是这样做:

<div id="some_div"><a href="JavaScript:myfunction();">Text</a></div>

我可以这样做:     文本

$('#some_div').on("click","a",function(e){
  myFunction();
});

我的问题是,如果你必须将变量传递给函数,它是如何工作的?例如:

<div id="some_div"><a href="JavaScript:myfunction('param1','param2')">Text</a></div>

现在请记住,param1和param2中的数据将是不同的字符串。你怎么处理这个案子?事件监听器需要接收锚标签输入的不同数据。那么用户在使用时如何添加param1和param2数据:

<div id="some_div"><a href="#">Text</a></div>

提前谢谢。

1 个答案:

答案 0 :(得分:7)

有很多方法可以做到。我想到的一个问题是在锚点上使用data-*属性:

<a href="#" data-param1="param1" data-param2="param2">Text</a>

var $this = $(this);
myFunction($this.data("param1"), $this.data("param2"));