0

有没有办法从 HTML 元素的属性访问 JavaScript 变量?

例如:

<a href="#" id="id1" my-attr="test">click here</a>

<script type="text/javascript">
var test="hello world!";
$("#id1").click(function() { alert($(this).attr('my-attr')) });
</script>

我想要发生的是显示“hello world!”的警报。但显然相反,它显示“测试”

我知道如果我使用 eval() 我可以做到这一点,我只是想知道是否还有其他方法。某种类型的 JavaScript 反射之类的?

谢谢!

4

1 回答 1

0
<a href="#" id="id1" my-attr="test">click here</a>

<script type="text/javascript">
var test="hello world!";
$("#id1").click(function() { 
          $(this).attr('my-attr',test);
          alert($(this).attr('my-attr')); 
});
</script>

你需要把你的变量测试放在那个.attr函数中。并且不要my-attr用作自定义属性,而是使用Data-attr,以便您可以使用.datajquery 中的函数访问它。

于 2012-11-25T14:00:34.937 回答