Sharepoint 如何在保存按钮上添加重定向链接?
我试图使讨论板消息部分的保存按钮返回到团队站点,而不是停留在讨论板页面上。我已经找了几个小时了,但没能找到多少。我试图插入以下代码:Sharepoint 如何在保存按钮上添加重定向链接?,sharepoint,sharepoint-2010,Sharepoint,Sharepoint 2010,我试图使讨论板消息部分的保存按钮返回到团队站点,而不是停留在讨论板页面上。我已经找了几个小时了,但没能找到多少。我试图插入以下代码: <script type="text/javasccript"> $(document).ready(function() { var button = $("input[id$=SaveItem]"); // change redirection behavior button.removeAttr("onclick"); butt
<script type="text/javasccript">
$(document).ready(function() {
var button = $("input[id$=SaveItem]");
// change redirection behavior
button.removeAttr("onclick");
button.click(function() {
var elementName = $(this).attr("name");
var aspForm = $("form[name=aspnetForm]");
var oldPostbackUrl = aspForm.get(0).action;
var currentSourceValue = GetUrlKeyValue("Source", true, oldPostbackUrl);
var newPostbackUrl = oldPostbackUrl.replace(currentSourceValue, "mySite.aspx");
if (!PreSaveItem()) return false;
WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(elementName, "", true, "", newPostbackUrl, false, true));
});
});
</script>
$(文档).ready(函数(){
var按钮=$(“输入[id$=SaveItem]”);
//更改重定向行为
移除按钮(“onclick”);
按钮。单击(函数(){
var elementName=$(this.attr(“name”);
var aspForm=$(“form[name=aspnetForm]”);
var oldPostbackUrl=aspForm.get(0).action;
var currentSourceValue=GetUrlKeyValue(“Source”,true,oldPostbackUrl);
var newPostbackUrl=oldPostbackUrl.replace(currentSourceValue,“mySite.aspx”);
如果(!PreSaveItem())返回false;
WebForm_DoPostBackWithOptions(新WebForm_PostBackOptions(elementName,“,true,”,newPostbackUrl,false,true));
});
});
但它不起作用,我在NewForm.aspx中得到了这个错误:
语言筛选器:未连接
语言筛选器未连接。要连接语言过滤器,请打开“Web部件编辑”菜单,然后选择“连接”将此语言过滤器连接到其他Web部件
不管怎样,现在我迷路了,任何帮助都会很好。您可以更改新项目表单查询字符串的源参数,如下所示:
http://siteurl/testing/teamsite/Lists/Team%20Discussion/New1.aspx?Source=siteurl
单击“取消”或“保存”按钮时,页面将重定向到指定的url。那么覆盖Save按钮就不需要jquery了
有关更多详细信息,请参阅本文,它对我也不起作用,但我最终通过注释除第一个变量之外的所有行并将其输出到控制台,使它起作用。控制台输出告诉我aspForm为null。所以我当时就知道“form[name=aspnetForm]”在源代码中不存在。通过检查源代码,我找到了id=aspnetForm的表单,所以我替换了那行代码,瞧
var aspForm = $("form[id=aspnetForm]");
我看过很多关于如何做到这一点的帖子——没有
SOURCE
querystring
因此,我在SharePoint 2013中对该解决方案进行了数小时的测试。这个保存按钮完全按照预期重定向;我让它重定向到“/Pages/default.aspx”
$(文档).ready(函数(){
变量元素名;
var-oldPostbackUrl;
var-currentSourceValue;
var newPostbackUrl;
var按钮=$(“输入[id$=SaveItem]”);
//更改重定向行为
移除按钮(“onclick”);
按钮。单击(函数(){
var elementName=$(this.attr(“name”);
var aspForm=$(“form[id=aspnetForm]”);
oldPostbackUrl=aspForm[0]。操作;
currentSourceValue=GetUrlKeyValue(“源”),true,
oldPostbackUrl);
newPostbackUrl=oldPostbackUrl.replace(currentSourceValue,“/Pages/default.aspx”);
如果(!PreSaveItem())返回false;
WebForm_DoPostBackWithOptions(新WebForm_PostBackOptions(elementName,“,true,”,newPostbackUrl,false,true));
});//结束按钮。单击
}); //结束文件准备就绪
这不会保存布尔类型的字段或多行文本