1

我只是想在 Google 小工具中读取用户的布尔首选项,但似乎该首选项根本不会被保存,而且我只能得到 default_value 是什么。我把它分解成一个非常简单的测试用例。这是我的测试小工具规格:

<?xml version="1.0" encoding="UTF-8" ?> 
<Module>
  <ModulePrefs title="Gadget to test bool"> 
  </ModulePrefs>
  <UserPref name="testpref" display_name="Test Boolean Preference" default_value="true" datatype="bool" />
  <Content type="html">
  <![CDATA[
    <script type="text/javascript"> 
        var prefs = new gadgets.Prefs();
        alert(prefs.getBool('testpref'));
    </script>
  ]]>
  </Content>
</Module>

我希望看到的是用户在首选项对话框中选择的任何内容true的警报。false但是,用户的首选项完全被忽略,没有保存,甚至我的默认值也没有显示在首选项中。当我为默认值指定 true 时,首选项复选框保持未选中状态。

我错过了什么?

编辑:我正在尝试在 Google Apps Google 协作平台起始页上使用它。

4

1 回答 1

2

我在 iGoogle 中测试了您的示例代码,它似乎工作正常。也就是说,可以选中或取消选中一个框,并使用正确的值触发警报。

据我所知,某些类型的小工具容器不允许用户偏好 - 因此在 iGoogle 中工作的小工具将无法在标准的 Google 站点页面中正常工作(除了用户可自定义类型的页面)。

iGoogle 中代码“不起作用”的另一个常见问题是小工具代码的缓存。要强制小工具不缓存,请将“?nocache”添加到小工具 URL...

于 2010-10-13T01:29:56.510 回答