从照片中我可以看到我在右上角搜索,在右下角我有大量的页面等。
但是当我在这里添加另一个项目时点击“Lägghenny”并由于某种原因添加项目我的页面最终会像这样: http://puu.sh/kKSZz/387c71f487.png
从表格“Breaks”可以看出,搜索字段被删除,页面也被删除。当我选择编辑或删除我已经添加的项目时,会发生同样的事情。
这是我的观点:
<div id="tabs-current">
<div id="ConsultantTimes">
@{
Html.RenderAction("ConsulantTimes");
}
</div>
<a href="javascript:OpenDialog()" class="btn btn-primary">
Lägg till ny
</a>
</div>
可以看出,该表是局部视图,现在是:
<table class="table table-striped table-bordered table-hover" id="sample_1">
<thead>
<tr>
<th>Projekt</th>
<th>Mitt Datum</th>
<th>%</th>
<th>Projektdatum</th>
</tr>
</thead>
<tbody>
@foreach (var project in ViewData["times"] as List<ConsultantProjectTime>)
{
<tr>
<td>
<a href="javascript:OpenDialog2('@project.ID','@project.FK_ProjectID','@project.StartDate.ToShortDateString()','@project.EndDate.ToShortDateString()','@project.Pct');">
@project.Project.ProjectName
</a>
</td>
<td>@(project.StartDate.ToShortDateString() + " - " + project.EndDate.ToShortDateString())</td>
<td>@(project.Pct)%</td>
<td>
@if (project.Project.StartDate.HasValue && project.Project.EndDate.HasValue)
{
@(project.Project.StartDate.Value.ToShortDateString() + " - " + project.Project.EndDate.Value.ToShortDateString())
}
</td>
</tr>
}
</tbody>
这是我选择添加另一个项目时运行的脚本:
$("#dialog").dialog({
bgiframe: true,
autoOpen: false,
height: 220,
width: 305,
modal: true,
buttons: {
'Spara': function() {
if (!validate()) {
alert('Procent måste vara mellan 0-100');
return false;
}
locstring = "@(Url.Action("Index"))/Update/?";
locstring += '&projectId=' + $('#projectList').val();
locstring += '&startDate=' + $('#startDate').val();
locstring += '&endDate=' + $('#endDate').val();
locstring += '&pct=' + $('#pct').val();
var sid = $('#sId').text();
if (sid != "") {
locstring += '&id=' + sid;
//locstring = "/Delete/" + sid;
}
//window.location = locstring;
$.ajax({
type: "GET",
url: locstring,
dataType: "html",
success: function(data) {
//alert(locstring);
$('#dialog').dialog('close');
ReloadTable();
}
});
},
'Avbryt': function() {
$(this).dialog('close');
},
'Ta bort': function() {
var sid = $('#sId').text();
if (sid != "") {
locstring = "@(Url.Action("Index"))/Delete/" + sid;
//locstring += '&delete=true&id=' + sid;
$.ajax({
type: "GET",
url: locstring,
dataType: "html",
success: function(data) {
$('#dialog').dialog('close');
ReloadTable();
}
});
请注意,当发生这种情况时,我的控制台中没有错误。
发现错误但不确定如何解决,这是我的ReloadTable函数:
function ReloadTable() {
if (navigator.appName == "Microsoft Internet Explorer") {
//alert('suck..');
window.location.reload();
} else {
$.ajax({
type: "GET",
url: '@(Url.Action("ConsulantTimes"))',
dataType: "html",
success: function(data) {
$('#dialog').dialog('close');
$('#ConsultantTimes').html(data);
}
});
}
}
答案 0 :(得分:0)
您正在做的是替换#ConsultantTimes
的全部内容并将其替换为data
变量。请改为使用$( "sample_1" ).replaceWith(data);
,或者可以使用前置或附加。