Javascript 在php datatable中为google图表自定义html工具提示添加属性

Javascript 在php datatable中为google图表自定义html工具提示添加属性,javascript,php,jquery,datatable,google-visualization,Javascript,Php,Jquery,Datatable,Google Visualization,我试图通过将自定义html工具提示添加到datatable中,在我的google图表中创建自定义html工具提示,现在我的datatable是用PHP创建的,如下所示: $datatable = array('cols' => array( array('type' => 'string', 'role' => 'domain', 'label' => 'Month'), array('type' => 'string', 'role' => 'too

我试图通过将自定义html工具提示添加到datatable中,在我的google图表中创建自定义html工具提示,现在我的datatable是用PHP创建的,如下所示:

  $datatable = array('cols' => array(
 array('type' => 'string', 'role' => 'domain', 'label' => 'Month'),
 array('type' => 'string', 'role' => 'tooltip'), 
 array('type' => 'string', 'role' => 'domain', 'label' => 'Omzet'), 
 array('type' => 'number', 'label' => 'Omzet '.$jaar), 
 array('type' => 'number', 'label' => 'Omzet '.($jaar-1)), 
 array('type' => 'string', 'role' => 'domain', 'label' => 'Aantal'), 
 array('type' => 'number', 'label' => 'Aantal '.$jaar), 
 array('type' => 'number', 'label' => 'Aantal '.($jaar-1))
));
$datatable['rows'][] = array('c' => array(
 array('v' => $monthname),
 array('v' => '<h1>custom</h1> tooltip '.$monthname),
 array('v' => 'Omzet '.$monthname),
 array('v' => $row['totaal']),
 array('v' => $omzet),
 array('v' => 'Aantal'),
 array('v' => $row['aantal']),
 array('v' => $aantal)
));
并填写如下:

  $datatable = array('cols' => array(
 array('type' => 'string', 'role' => 'domain', 'label' => 'Month'),
 array('type' => 'string', 'role' => 'tooltip'), 
 array('type' => 'string', 'role' => 'domain', 'label' => 'Omzet'), 
 array('type' => 'number', 'label' => 'Omzet '.$jaar), 
 array('type' => 'number', 'label' => 'Omzet '.($jaar-1)), 
 array('type' => 'string', 'role' => 'domain', 'label' => 'Aantal'), 
 array('type' => 'number', 'label' => 'Aantal '.$jaar), 
 array('type' => 'number', 'label' => 'Aantal '.($jaar-1))
));
$datatable['rows'][] = array('c' => array(
 array('v' => $monthname),
 array('v' => '<h1>custom</h1> tooltip '.$monthname),
 array('v' => 'Omzet '.$monthname),
 array('v' => $row['totaal']),
 array('v' => $omzet),
 array('v' => 'Aantal'),
 array('v' => $row['aantal']),
 array('v' => $aantal)
));
否则,工具提示将显示为纯文本而不是html标记

这意味着我必须以某种方式将'p':{'html':true}属性添加到我的数据表中

我试着把它编辑成

array('type' => 'string', 'role' => 'tooltip', 'p' => '{ html : true}'),
甚至

array('type' => 'string', 'role' => 'tooltip', 'html' => true),
但这些似乎都不起作用,我也找不到在谷歌上实现的方法

我希望我已经提供了足够的信息来帮助你找到答案,如果你还需要什么,请告诉我

这是我第一次在这里发帖,所以请友好点(:

addColumn({'type':'string','role':'tooltip','p':{'html':true})


这是json格式的。如果我理解正确,您只需要将数组转换为json数组。在PHP中,您可以通过函数来实现这一点。

您使用
array('type'=>'string','role'=>'tooltip',p'=>'{html:true}'的方法是正确的),
但是您需要为
'html':true
部分增加一个数组

它应该看起来像
array('type'=>string','role'=>tooltip','p'=>array('html'=>true));


我在这里尝试过:

好吧,我已经设法修复了它,问题是我必须添加它作为一个额外的数组元素,如下所示:

array('type' => 'string', 'role' => 'tooltip', 'p' => array('html' => true)),

这以谷歌图表接受的格式创建了JSON,将工具提示转换为HTML格式的文本。

很抱歉,我不熟悉PHP,但你不能尝试使用所有这些“数组”将输入保存为字符串吗?@HenrikAronsson我不确定你的意思。这是我找到的创建JSON dat的最佳方法使用php数组的atable如上所述,我对php不是很熟悉,但随着对它的进一步研究,我相信您应该继续尝试使用
数组('type'=>'string','role'=>'tooltip','p'=>'{html:true}'),
,但是作为
数组('type'=>'string'))
将是Json
'type':'string'
我将把您的行更改为
array('type'=>'string','role'=>'tooltip','p'=>array('html'=>true)),
或类似的内容。是的,我正在通过javascript中的json_encode将其转换为json以创建datatable,但是我不能指定列的属性为上述html:true部分。至少我不知道如何实现,但我想应该有一种方法