2010-06-11 115 views
0

我有一个ASPX页面呈现搜索ascx页面,这反过来将填充主ASPX页面上的网格。 放在一边,我也得到了一个ASCX页,其中上传的文件,像这样:如何仅发布特定的ASCX部分而不是整个页面

<form method="post" action="<%= Url.Action("UploadFile") %>" enctype="multipart/form-data"> 
     <fieldset> 
      <input type="file" name="file" id="file" /> 
      <%=Html.ButtonSubmit("Upload") %> 
      </fieldset></form> 

这里的问题:想象一下...我已经寻找在网格上要显示的条目。网格显示这个单一的条目,并在病房后,我上传一个文件,并按下“上传”按钮。整个页面被张贴并且网格中的内容丢失,现在显示所有可用的结果。 我能做些什么来防止这种情况发生,维护网格状态(我们没有使用ViewState),否则不会发回整个页面,但只有ascx与文件上传?

注:我是MVC的新手。

回答

1

您的部分视图呈现在您的HTML内部......这会导致一个“静态”HTML文件无法提交并仅重新加载部分内容。

我能想象两种方法来解决你的问题:

1)将您的上载公式推的HTML iFrame中......现在只有这个的iFrame会重新提交。问题:根据您上传后想要采取的操作,父级和子级框架之间的通信将使上传的数据可用。

2)使用jQuery/AJAX进行基于JavaScript的提交(http://api.jquery.com/jQuery.post/)并使用jQuery/JavaScript动态刷新页面内容。这将是我的首选方式,但需要更多关于jQuery/JavaScript的知识。

BTW:jQuery是近一个必须拥有的任何asp.net MVC应用程序;-)

欢迎MVC :-)

+0

感谢您的帮助奥拉夫,我自掏一点点进入jQuery的。 – Hallaghan 2010-06-11 13:29:32

+0

这真的很值得 - 它让我的生活变得更轻松...... :-) – OlafW 2010-06-11 13:36:52

相关问题