Javascript 通过在Multiselect参数中发送/更新字符串来传递参数值
我是Pentaho BI工具(Pentaho cde)的新手。我要更新选定的值并将其指定给参数 我已经创建了Multiselect组件和简单参数 我在Multiselect组件的post change methode中添加了javascript代码,如下所示: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
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);
}
谢谢