<!DOCTYPE html>
<br> function insert()<br> {<br> var a="jioho";<br> var str="<table><tr><button type='button' onclick='test("+ a+")'>点击</button>";<br> document.getElementById("1").innerHTML=str;<br> }<br> function test(a)<br> {<br> alert(a);<br> }<br>
onclick=test('"+a+"') 试一下这个在用单引号把参数包起来!
额,代码上传,变乱了,我截一张图
var str = "<table><tr><button type='button' onclick=test("+a+")>"
改成onclick=test(a)试试
还是不行,我调试,上面说 jioho 未定义
调试的如下图,
document.getElementById("1").这是什么呀?传值加引号
你先直接把a的值填入test方法的参数里,不要用var进行声明 试一下 效果
作用域问题,你的test()在页面中执行时,并没有定义变量a。
要这样写
借用楼上的说法,改好后是下面的,谢谢各位了