Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从新表单重定向到显示表单不会保存项目_Javascript_Jquery_Sharepoint_Sharepoint 2013 - Fatal编程技术网

Javascript 从新表单重定向到显示表单不会保存项目

Javascript 从新表单重定向到显示表单不会保存项目,javascript,jquery,sharepoint,sharepoint-2013,Javascript,Jquery,Sharepoint,Sharepoint 2013,当用户使用NewForm.aspx保存项目时,我试图重定向到显示表单,而不是返回到“所有项目”视图。我能够完成重定向,但它没有保存该项。我的代码如下所示,并输入到NewForm.aspx页面上的脚本编辑器Web部件中: <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script> // JavaScript source code $(d

当用户使用NewForm.aspx保存项目时,我试图重定向到显示表单,而不是返回到“所有项目”视图。我能够完成重定向,但它没有保存该项。我的代码如下所示,并输入到NewForm.aspx页面上的脚本编辑器Web部件中:

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<script>
// JavaScript source code
$(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[id=aspnetForm]");  
    var oldPostbackUrl = aspForm.attr("action");  
    //var oldPostbackUrl = aspForm.action;
    var currentSourceValue = GetUrlKeyValue("Source", true, oldPostbackUrl);  
    var newPostbackUrl = oldPostbackUrl.replace(currentSourceValue, "/sites/mysite/DispForm.aspx");  

    if (!PreSaveItem()) return false;  
    WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(elementName, "", true, "", newPostbackUrl, false, true));  
});  
});
</script>

//JavaScript源代码
$(文档).ready(函数(){
var按钮=$(“输入[id$=SaveItem]”);
//更改重定向行为
移除按钮(“onclick”);
按钮。单击(函数(){
var elementName=$(this.attr(“name”);
var aspForm=$(“form[id=aspnetForm]”);
var oldPostbackUrl=aspForm.attr(“操作”);
//var oldPostbackUrl=aspForm.action;
var currentSourceValue=GetUrlKeyValue(“Source”,true,oldPostbackUrl);
var newPostbackUrl=oldPostbackUrl.replace(currentSourceValue,“/sites/mysite/DispForm.aspx”);
如果(!PreSaveItem())返回false;
WebForm_DoPostBackWithOptions(新WebForm_PostBackOptions(elementName,“,true,”,newPostbackUrl,false,true));
});  
});

这在SharePoint 2013 Online中。更新:如果您没有弹出到模式(列表设置>高级>对话框中的启动表单?)中,它会起作用。但我需要它在模式中弹出。我以为它在工作,但某些字段不会保存!请参阅:您无法对自己的帖子0进行投票。一旦用户返回到“所有项目”页面,我会有条件地重定向用户,使其正常工作。基本上,一旦默认的SharePoint save and return to items视图完成,我将使用REST API查找当前作者最近创建的、其工作流未完成的项目,然后重定向到显示表单