单击时执行javascript函数
我正在尝试使用一个javascript函数来创建单独的按钮,然后单击该按钮来执行不同的js函数。我为js函数创建的每个按钮都有一个不同的参数 这个版本的函数可以工作。它使用参数“addr2”的onclick valChange函数创建一个新按钮。我希望“addr2”是一个字符串,我可以根据需要进行更改,就像我在第二个版本中使用它一样 html只是函数要将新div放入的div。 两个版本都将在testbox分区内创建一个新按钮。版本1的按钮工作,并将在单击时执行alert valchange功能。版本2的按钮不执行该功能。我如何让版本2工作,为什么它目前不工作单击时执行javascript函数,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试使用一个javascript函数来创建单独的按钮,然后单击该按钮来执行不同的js函数。我为js函数创建的每个按钮都有一个不同的参数 这个版本的函数可以工作。它使用参数“addr2”的onclick valChange函数创建一个新按钮。我希望“addr2”是一个字符串,我可以根据需要进行更改,就像我在第二个版本中使用它一样 html只是函数要将新div放入的div。 两个版本都将在testbox分区内创建一个新按钮。版本1的按钮工作,并将在单击时执行alert valchange功能。
<div id="testbox">
</div>
变量i没有正确使用
function dostuff()
{
var newDiv = document.createElement('div');
var i = "box1";
var html = '<input type="button" onclick="valChange(\''+i+'\')">';
newDiv.innerHTML = html;
$('#testbox').append(html);
}
函数dostuff()
{
var newDiv=document.createElement('div');
var i=“box1”;
var html='';
newDiv.innerHTML=html;
$('#testbox').append(html);
}
您缺少一些引号当前点击JS需要一个变量
box1
,而不是一个字符串(这是您想要的)
函数dostuff(){
var newDiv=document.createElement('div');
var i=“box1”;
var html='';
newDiv.innerHTML=html;
$('#testbox').append(html);
}
功能更改(divID){
警报(“它工作了”+divID);
}
dostuff()代码>
在第二个版本中,它将i视为字符串。这应该起作用:
function dostuff()
{
var newDiv = document.createElement('div');
var i = "box1";
var html = '<input type="button" onclick="valChange(\'' + i + '\')">';
newDiv.innerHTML = html;
$('#testbox').append(html);
}
函数dostuff()
{
var newDiv=document.createElement('div');
var i=“box1”;
var html='';
newDiv.innerHTML=html;
$('#testbox').append(html);
}
谢谢你。修好了。
function valChange (divID)
{
alert("it worked" + divID);
}
function dostuff()
{
var newDiv = document.createElement('div');
var i = "box1";
var html = '<input type="button" onclick="valChange(\''+i+'\')">';
newDiv.innerHTML = html;
$('#testbox').append(html);
}
function dostuff()
{
var newDiv = document.createElement('div');
var i = "box1";
var html = '<input type="button" onclick="valChange(\'' + i + '\')">';
newDiv.innerHTML = html;
$('#testbox').append(html);
}