我正在开发和MVC 5应用程序。在页面上,我有一个部分视图,我从ECM存储库加载内容。所以文件名和上传日期。这在页面加载时工作正常。
我的部分视图cshtml类似于:
<form id="searchForm" class="h-form">
<div class="form-group row">
content for cmis search lives here - removed for brevity
</div>
</form>
<div class="table-responsive top-margin">
<table id="myFiles" class="table table-striped table-hover"></table>
</div>
加载页面时,我有一个名为的javascript搜索功能。
function mySearch() {
$.ajax({
url: 'mysearchurl',
type: 'GET',
data: $('#searchForm').serialize(),
success: function (data) { buildFileList(data); },
error: function (xhr, ajaxOptions, thrownError) { alert(xhr.status + " " + thrownError); }
});
return false;
}
我的buildFileList函数如下所示(注意myFiles是显示结果的局部视图上的Div。:
function buildFileList(data) {
$('#myFiles').empty();
$('#myFiles').append('<thead><tr><th>File Name</th><th>Uploaded Date</th></tr></thead><tbody>');
$.each(data.results, function (index, value) {
$('#myFiles').append("Data built up for each file");
});
}
我有一个上传文件ajax函数,可以将文件上传到ECM。在这个ajax方法的成功函数中,我然后调用search();再次运行,但即使上传成功,myFiles Div也没有使用上传的新文件进行更新。然后我更改并将调用将search()函数移动到ajax方法的完整函数,但myFiles Div没有使用新内容刷新。但是如果我刷新了search(); fucntion也在document.ready上调用,myFiles div使用添加的新文件进行更新。