使用div.innerHTML传递多个onClick参数

时间:2014-09-09 04:41:18

标签: javascript html

我想将多个参数传递给通过onClick调用的函数。这是代码:

 div.innerHTML += '<input type="button" name="back" id="back" value="Back" onClick="homeForm(\'' + form,divName + '\')" />';

function homeForm(form,divName){
//do something   

}

这适用于一个参数,但不适用于两个:

 div.innerHTML += '<input type="button" name="back" id="back" value="Back" onClick="homeForm(\'' + form + '\')" />';

有人可以为此发布一种工作方法,或者更简洁一些吗?

4 个答案:

答案 0 :(得分:3)

所以最后这段代码是唯一适合我的代码。我在这里张贴以防其他人需要它:

 div.innerHTML += '<input type="button" name="back" id="back" value="Back"    onClick="homeForm(\''+myForm+'\',\''+divName+'\')" />';

答案 1 :(得分:1)

尝试以下,不要逃避它。正确地连接params。如下所示:

div.innerHTML += '<input type="button" name="back" id="back" value="Back" onClick="homeForm(' + form  + ',' + divName + ')" />';

答案 2 :(得分:1)

我可以从你的问题中看出,你希望从onclick函数传递和div, 所以,非常简单的方法是你传递两者的id,并从函数中获取它的值, 它很容易处理和评估。

div.innerHTML += '<input type="button" name="back" id="back" value="Back" onClick=\'homeForm("formId","divId")\' />';

function homeForm(formId,divId)
{
       console.log($("#"+formId));
       console.log($("#"+divId));
}

答案 3 :(得分:0)

轻松!看起来您已经忘记了form和divName之间的逗号应该用引号括起来。而不是

...' + form,divName + '...

DO

...' + form + ',' + divName + '...