var testStr='World';
tUserBlock.setAttribute('onclick', 'javascript:alert("Hello" + testStr)');
这可能是一个愚蠢的问题,但我正在尝试向.setAttribute onclick事件添加一个变量,但我不太确定将变量添加到引号中的正确语法是什么?以上警告未显示。
答案 0 :(得分:3)
var testStr='World';
tUserBlock.setAttribute('onclick', 'javascript:alert("Hello '+testStr+'")');
然而,这是将点击事件绑定到元素的不良方式。相反,请查看element.addEventListener
方法 - 这是首选的绑定方式。这有多种原因 - 一个是你不仅限于每种类型的一个事件(就像你当前的方法一样)。另一个原因是它使代码不在你的标记之内。
答案 1 :(得分:1)
这是绑定事件的正确方法(无需使用setAttribute
):
var testStr='World';
tUserBlock.onclick = function() { alert("Hello" + testStr) };
如果你仍坚持原来的方式,这就是这样做的方式:
var testStr='World';
tUserBlock.setAttribute('onclick', 'javascript:alert("Hello ' + testStr + '")');
答案 2 :(得分:0)
试试这个。
var testStr='World';
tUserBlock.setAttribute('onclick', 'javascript:alert("Hello '+testStr+'")');
我希望这会对你有所帮助。
答案 3 :(得分:0)
这对我有用,我没有改变任何东西:
<button class="tUserBlock">click me</button>
<script>
var tUserBlock = document.querySelector('.tUserBlock');
var testStr='World';
tUserBlock.setAttribute('onclick', 'javascript:alert("Hello" + testStr)');
</script>