如何在字符串内的javascript函数内插入多个参数。

例:

var a = '<a onclick="my_function(parameter1, parameter2)">Click</a>';


我尝试使用

my_function(\''+parameter1+', '+parameter2+'\')


但不起作用。

谢谢大家

最佳答案

当您使用jQuery时,使用它创建元素并使用它绑定事件。在示例中,我使用.data()存储可以在点击处理程序中获取的任意值

var a = $('<a>Click</a>')
        .data('parameter1', parameter1)
        .data('parameter2', parameter2)
        .on('click', function(){
            var parameter1 = $(this).data('parameter1');
            var parameter2 = $(this).data('parameter2');
            my_function(parameter1, parameter2)
        });


对于当前问题,您需要正确地转义引号

var a = '<a onclick="my_function(\''+ parameter1 + '\',\'' parameter2 + '\')">Click</a>';


根据注释,parameter1是一个数字,您不需要将其包装。

var a = '<a onclick="my_function('+ parameter1 + ',\'' parameter2 + '\')">Click</a>';

09-16 16:33