根据 Sharepoint 新项目中的下拉选择隐藏字段
Hide field based on drop down selection in sharepoint new item
我是 Sharepoint 的新手。
我已经创建了一个列表。在新项目 window 中,我想根据下拉选择值显示或隐藏字段。我知道可以使用 jquery 来完成,如下面 link 所示。但我不知道在哪里放置代码。
谢谢
然后转到您的列表主页
List Tools>List>Form Web Parts>Default New Form
然后单击 Add a Web Part
和 Categories
select Media and Content > Content Editor
。单击 Add
将其添加到页面。
在内容编辑器的左侧,您会看到一个箭头。单击它并选择 Edit Web Part
。在 Content Link
下单击按钮打开 Text Editor
。添加您的 aspx 页面的 URL。
例如,如果页面存储在 Site Assets
库中并称为 newform.aspx
,则 url 为 [url path to site assets]/SiteAssets/newform.aspx
。转到存储脚本的位置并复制 link 由浏览器显示:复制直到 /SiteAssets/
或 /[library internal name]/
到另一个库。然后附加脚本名称。您会注意到相对 URL 就足够了,它从 /sites/
.
开始
但是 newform.aspx
必须这样编辑:
<asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server">
<SharePoint:ScriptLink Name="sp.ribbon.js" runat="server" OnDemand="true" Localizable="false" />
<SharePoint:ScriptLink Name="SP.js" runat="server" OnDemand="true" Localizable="false" />
<script type="text/javascript">
/*Your script here*/
/*examples*/
myFunction1()
{}
myFunction2()
{}
jQuery(document).ready(function ($)
{
ExecuteOrDelayUntilScriptLoaded(myFunction1, "sp.js"); //if the function operates on the form
ExecuteOrDelayUntilScriptLoaded(myFunction2, "sp.ribbon.js"); //if the function operates on the ribbon
});
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=windows-1252" http-equiv="Content-Type" />
<title>Page</title>
</head>
<body>
</body>
</html>
</asp:Content>
1。如果您想在表单 and/or 功能区
上工作,请通过在页面顶部添加必要的标签来请求服务器加载 sp.js and sp.ribbon.js
2.您可以添加自定义 html :否则删除
3.另存为.aspx
步骤:
- 下载SPUtility.js.
- 将下载的文件 (SPUtility.js) 上传到 SharePoint 站点中的适当位置,例如“样式库”。
- 打开您的列表 > 从上面的功能区,> 在“自定义列表”部分 > 单击“表单 Web 部件” > Select“默认新表单”。
- 在您的新表单中添加脚本编辑器。
- 编辑代码段 > 添加以下代码。
代码
<script>
$(document).ready(function ()
{ // Get a the choice field
var choiceField = SPUtility.GetSPField('Job Title');
// Hide the target fields in form load
SPUtility.GetSPField('Other Title').Hide();
// create a function to show or hide a field based on the selected choice Field value
var ShowHideField = function() {
var selectedFieldValue = choiceField.GetValue();
// Hide the 'Other Title' field if the selected value is 'Other'
if(selectedFieldValue != 'Other') {
SPUtility.GetSPField('Other Title').Hide(); }
else { SPUtility.GetSPField('Other Title').Show(); } };
// attach the function to choice field
$(choiceField.Dropdown).on('change', ShowHideField); });
</script>
[输出]
Note: Replace the Job Title
with your choice field name and Other Title
with your field that you need to show or hide based on
the choice field selection.
详情请查看
我是 Sharepoint 的新手。
我已经创建了一个列表。在新项目 window 中,我想根据下拉选择值显示或隐藏字段。我知道可以使用 jquery 来完成,如下面 link 所示。但我不知道在哪里放置代码。
谢谢
然后转到您的列表主页
List Tools>List>Form Web Parts>Default New Form
然后单击 Add a Web Part
和 Categories
select Media and Content > Content Editor
。单击 Add
将其添加到页面。
在内容编辑器的左侧,您会看到一个箭头。单击它并选择 Edit Web Part
。在 Content Link
下单击按钮打开 Text Editor
。添加您的 aspx 页面的 URL。
例如,如果页面存储在 Site Assets
库中并称为 newform.aspx
,则 url 为 [url path to site assets]/SiteAssets/newform.aspx
。转到存储脚本的位置并复制 link 由浏览器显示:复制直到 /SiteAssets/
或 /[library internal name]/
到另一个库。然后附加脚本名称。您会注意到相对 URL 就足够了,它从 /sites/
.
开始
但是 newform.aspx
必须这样编辑:
<asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server">
<SharePoint:ScriptLink Name="sp.ribbon.js" runat="server" OnDemand="true" Localizable="false" />
<SharePoint:ScriptLink Name="SP.js" runat="server" OnDemand="true" Localizable="false" />
<script type="text/javascript">
/*Your script here*/
/*examples*/
myFunction1()
{}
myFunction2()
{}
jQuery(document).ready(function ($)
{
ExecuteOrDelayUntilScriptLoaded(myFunction1, "sp.js"); //if the function operates on the form
ExecuteOrDelayUntilScriptLoaded(myFunction2, "sp.ribbon.js"); //if the function operates on the ribbon
});
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=windows-1252" http-equiv="Content-Type" />
<title>Page</title>
</head>
<body>
</body>
</html>
</asp:Content>
1。如果您想在表单 and/or 功能区
上工作,请通过在页面顶部添加必要的标签来请求服务器加载 sp.js and sp.ribbon.js
2.您可以添加自定义 html :否则删除
3.另存为.aspx
步骤:
- 下载SPUtility.js.
- 将下载的文件 (SPUtility.js) 上传到 SharePoint 站点中的适当位置,例如“样式库”。
- 打开您的列表 > 从上面的功能区,> 在“自定义列表”部分 > 单击“表单 Web 部件” > Select“默认新表单”。
- 在您的新表单中添加脚本编辑器。
- 编辑代码段 > 添加以下代码。
代码
<script>
$(document).ready(function ()
{ // Get a the choice field
var choiceField = SPUtility.GetSPField('Job Title');
// Hide the target fields in form load
SPUtility.GetSPField('Other Title').Hide();
// create a function to show or hide a field based on the selected choice Field value
var ShowHideField = function() {
var selectedFieldValue = choiceField.GetValue();
// Hide the 'Other Title' field if the selected value is 'Other'
if(selectedFieldValue != 'Other') {
SPUtility.GetSPField('Other Title').Hide(); }
else { SPUtility.GetSPField('Other Title').Show(); } };
// attach the function to choice field
$(choiceField.Dropdown).on('change', ShowHideField); });
</script>
[输出]
Note: Replace the
Job Title
with your choice field name andOther Title
with your field that you need to show or hide based on the choice field selection.
详情请查看