我正在尝试在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,这条路线对我来说不是一个选择。 人们已经说过使用内容类型可以做到这一点。我还没有考虑过这个选项。
答案 0 :(得分:0)
您也可以使用列表执行此操作:Implement Cascading Dropdowns
无论哪种方式,我都会使用sharepoint模板作为user1985793说或javascript级联下拉列表插件。
编辑:
您的应用看起来像这样
问题1:选择框 - 是或否显示
问题2:选择框 - 填写问题1选择
的选项问题3:选择框 - 填写问题2选择
的选项然后您将制作3个列表。每个问题一个列表。
第一份清单: 是或否
第二个列表:所有可能的选项,“父”列设置为第一个列表名称
第3个列表:所有可能的选项,其中“parent”列设置为第二个列表名称