Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.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
C# 局部视图提交_C#_Asp.net Mvc_Jquery_Model View Controller - Fatal编程技术网

C# 局部视图提交

C# 局部视图提交,c#,asp.net-mvc,jquery,model-view-controller,C#,Asp.net Mvc,Jquery,Model View Controller,我有一个带有下拉列表的视图,在更改此下拉列表时,我会使用Jquery Ajax获取id并填充部分视图,如下所示: $.ajax({ url: '/Edit/Fill', type: 'POST', async: true, data: { ID: ID }, success: function (data) {

我有一个带有下拉列表的视图,在更改此下拉列表时,我会使用Jquery Ajax获取id并填充部分视图,如下所示:

$.ajax({
                url: '/Edit/Fill',
                type: 'POST',
                async: true,
                data: { ID: ID },
                success: function (data) {
                    $('#Par').html(data);
                },
我的部分视图中有一个按钮,用于保存数据,保存后我想返回到同一页面

[HttpPost]
    public PartialViewResult Index(FormCollection All)
    {
    //My Code

    Return PartialView();
 }
我还试图返回相同的局部视图,但不起作用?? 在部分视图中单击“提交”按钮后,我希望保持在同一页面中


有什么建议吗?

您的ajax方法指向
/Edit/Fill
,而您的操作方法名为
Index
。你是说
/Edit/Index
?代码的其余部分看起来不错。

  • 选项1:如果局部视图不是复杂视图,请避免返回局部视图。。。相反,尝试从Ajax调用返回json数据,并使用Jquery将json数据绑定到父视图

  • 选项2:当您点击save时,尝试使用Ajax调用来保存数据,而不是表单提交

  • 选项3:表单提交需要重新加载页面,因此在PageLoadCollect下拉列表id中,执行Ajax调用以加载部分视图。(您可能必须使用会话数据在局部视图中加载正确的值)


你说它不工作是什么意思?您的控制器是否正确返回部分数据?Jquery是否没有正确插入它?您的控制器中是否出现服务器错误?每件事都在运行,但我想在保存数据后返回同一页。您想在成功时重新加载整个页面,而不仅仅是您的div?是的,这就是我想要的。没有编辑字段用于dropdownlist,但是编辑索引是针对部分视图的。您的ajax方法必须转到URL/edit/index才能命中您发布的操作,否则它将无法工作。ajax很好,保存数据后,我只想与部分视图保持在同一页面。更改操作方法以返回
ActionResult
,而不是
PartialViewResult
,这样可以解决问题吗?到底是什么错误?我做了,把它重定向到一个只有dropdownlist的页面,没有样式或任何东西。