向函数发送多个逗号分隔符值

时间:2013-02-18 13:12:12

标签: javascript

我想通过javascript向函数发送多个逗号分隔符值。该函数仅获取第一个值。请帮我解决这个问题。

onclick='add_values(" + items + ");return false;'

项目的意思是'98,97,96,95 ..'

function add_values(items) {
     try {
       alert(plans); // 98 only
       ...
}

但该函数只获得第一个值。 98.

2 个答案:

答案 0 :(得分:0)

String.split()方法可用于从逗号分隔的字符串中获取数组:

function add_values(items)
{
    var list = items.split(",");

    console.log( list[0] ); // 98
    console.log( list[1] ); // 97
    console.log( list[2] ); // 96
    console.log( list[3] ); // 95
}

来自MDN

  

通过将字符串分隔为子字符串,将String对象拆分为字符串数组。

当以这种方式将字符串值传递给函数时,您还需要使用引号:

onclick='add_values(\'" + items + "\');return false;'

答案 1 :(得分:0)

您不应该通过javascript设置内联事件处理程序属性字符串。这项技术已经过时了十多年,有better event registration models

如果你真的不得不,它应该是这样的:

htmlstr = "<div onclick='add_values(" + JSON.stringify(items) + ");return false;'>…</div>";