Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过在Multiselect参数中发送/更新字符串来传递参数值_Javascript_Pentaho - Fatal编程技术网

Javascript 通过在Multiselect参数中发送/更新字符串来传递参数值

Javascript 通过在Multiselect参数中发送/更新字符串来传递参数值,javascript,pentaho,Javascript,Pentaho,我是Pentaho BI工具(Pentaho cde)的新手。我要更新选定的值并将其指定给参数 我已经创建了Multiselect组件和简单参数 我在Multiselect组件的post change methode中添加了javascript代码,如下所示: function(s){ alert(s); // selected values = "08-01-2013,08-02-2013" var appendval = s+",08-05-2013"; //after append "08

我是Pentaho BI工具(Pentaho cde)的新手。我要更新选定的值并将其指定给参数

我已经创建了Multiselect组件和简单参数

我在Multiselect组件的post change methode中添加了javascript代码,如下所示:

function(s){
alert(s); // selected values = "08-01-2013,08-02-2013"
var appendval = s+",08-05-2013"; //after append "08-01-2013,08-02-2013,08-05-2013"
var  arrayappend =  appendval.toString().split(","); 
arrayappend = "'" + arrayappend.join("','") + "'";
if (typeof arrayappend == 'string') arrayappend = [arrayappend];
alert(arrayappend);  // alert as = '07-29-2013','08-01-2013','08-05-2013'
//Dashboards.fireChange('solddate',['07-29-2013','08-01-2013','08-05-2013']);//this works 
Dashboards.fireChange('solddate',arrayappend); // but this is not working
}

正如我在firechange事件中提到的,若我直接传递值,它会工作,但若我通过数组传递值,那个么它将不工作,我不知道我缺少了什么。提前谢谢

实际上,我正在将其转换为“quoted And CommaSeparated”,然后转换为array,以便Dashboard.fireChange最初不起作用。我已经更新了代码,跳过了中间步骤

function(s){
var appendval = s+",08-05-2013";
var  arrayappend =  appendval.toString().split(","); 
Dashboards.fireChange('solddate',arrayappend); 
}

谢谢

事实上,我正在将其转换为“quoted And CommaSeparated”,然后转换为数组,这样Dashboard.fireChange一开始就不起作用了。我已经更新了代码,跳过了中间步骤

function(s){
var appendval = s+",08-05-2013";
var  arrayappend =  appendval.toString().split(","); 
Dashboards.fireChange('solddate',arrayappend); 
}
谢谢