创建动态的SharePoint列表(表单) - 先行选择确定下一组问题

时间:2014-02-13 14:37:52

标签: javascript forms list dynamic sharepoint-2010

我正在尝试在sharepoint 2010中创建一个列表(提供用户可以填写的表单)。但是,我试图让它变得动态:

问题1(或技术上,列表中的第1列):是/否问题。 如果否,则显示问题2-15(或技术上,第2-15列)。 如果是,则显示另一组问题,我们称之为问题16-18(仅限3)。

因此,仅基于第一个问题,它将是动态的。当用户试图“向列表中添加新项目”时,我只希望显示第一个是/否问题。然后,一旦他们回答了第一个问题,它就会根据第一个问题的答案出现新的问题。

我正在通过JavaScript实现这一目标。到目前为止,我有这个代码:     

<script type="text/javascript">

$(document).ready(function()
{
$('td.ms-formlabel:contains("Title")').parent().hide();
$('td.ms-formlabel:contains("Start Time")').parent().hide();
$('td.ms-formlabel:contains("End Time")').parent().hide();
});
</script>

这只是我一直在使用的测试脚本。基本上只是使用较少数量的字段来测试我在SharePoint中使用的测试列表,以获得我希望这个表单的方式,所以这就是为什么到目前为止你只能在代码中看到3列。

到目前为止,我一直在玩的代码只是隐藏字段(我假设需要这样做,因为在开始时,我希望隐藏所有问题,除了问题1,对吧?至少那是怎么回事我在考虑它,我相信你们比我更清楚。

所以,除了第一个问题,我想隐藏所有内容。然后我应该添加一个IF STATEMENT,基本上说IF NO,显示问题ABC。如果是,则显示问题XYZ。但是,我仍然坚持如何做到这一点。我是编程的初学者,但我一直在尝试google并尽力学习。

非常感谢任何帮助。谢谢!!

P.S。 人们说InfoPath是一种选择。我没有InfoPath,这条路线对我来说不是一个选择。 人们已经说过使用内容类型可以做到这一点。我还没有考虑过这个选项。

1 个答案:

答案 0 :(得分:0)

您也可以使用列表执行此操作:Implement Cascading Dropdowns

无论哪种方式,我都会使用sharepoint模板作为user1985793说或javascript级联下拉列表插件。

编辑:

您的应用看起来像这样

问题1:选择框 - 是或否显示

问题2:选择框 - 填写问题1选择

的选项

问题3:选择框 - 填写问题2选择

的选项

然后您将制作3个列表。每个问题一个列表。

第一份清单: 是或否

第二个列表:所有可能的选项,“父”列设置为第一个列表名称

第3个列表:所有可能的选项,其中“parent”列设置为第二个列表名称