0

如果用户在共享点表单中选择某个复选框,我正在尝试使用 jQuery 来显示部分。我已经通过一个按钮和一个简单的复选框成功地做到了这一点,该复选框具有一个值来显示这篇博客文章http://akanoongo.blogspot.com/2008/04/how-to-hide-fields-in-sharepoint- list.html,但如果他们选择多个值,我会很挣扎。

<script type="text/javascript" src="/SiteAssets/Libraries/jquery-1.10.2.min.js"></script>
<script>
$(document).ready(function(){

 $("nobr:contains('Desk Calendars')").parent('h3').parent('td').parent('tr').hide();
 $("nobr:contains('Calendar Refills')").parent('h3').parent('td').parent('tr').hide();
 $("nobr:contains('Spiral Bound')").parent('h3').parent('td').parent('tr').hide();
 $("nobr:contains('Wall Calendars')").parent('h3').parent('td').parent('tr').hide();
 $("nobr:contains('Misc. Calendars')").parent('h3').parent('td').parent('tr').hide();
 $("nobr:contains('Franklin Covey')").parent('h3').parent('td').parent('tr').hide();
 $("nobr:contains('Comments')").parent('h3').parent('td').parent('tr').hide();
 $("nobr:contains('Retention Policy')").parent('h3').parent('td').parent('tr').hide();

});

</script>

看起来该值需要是包含 VALUE 而不是点击函数的 if 语句。我不知道该怎么办。

$("input[title$='ShowFields']").click(function()

基本上,如果他们选择挂历,它应该显示 jsut 挂历,但如果他们选择挂历和桌面,它应该同时切换它们。

任何指导都会很棒。谢谢!

4

1 回答 1

0

编辑:我根据您在下面的评论更改我的答案

为了做你想做的事,我将使用我创建的名为SharepointPlus的库(请在你的页面中加载 jQuery 和 SharepointPlus)。然后 JavaScript 代码将类似于:

// hide all the rows by default
$SP().formfields("Desk Calendars,Calendar Refills,Spiral Bound,Wall Calendars,Misc. Calendars,Franklin Covey,Comments,Retention Policy").row().hide();
// add a trigger for when you click a checkbox
$SP().formfields("Calendar Type").elem().on('click', function(event) {
  // the value of the checkbox is found with the "title" attribute from the parent
  // if it's checked, then we show the row, if it's not then we hide it
  $SP().formfields($(this).parent().attr("title")).row().toggle(this.checked)
})
于 2013-09-25T07:57:46.980 回答