我有一个Bootstrap对话框,其中包含一个列表,该列表在交易发生后需要更新。我已将对话框代码放在MVC局部视图中。我还定义了一个区域,部分视图将呈现为父视图,如下所示:
<div id="idCodeRefreshAreaForFindModal">
@{Html.RenderPartial("_FindPurchaseOrderModal", Model); }
</div>
使用以下代码可以很好地显示模式对话框:
单击以显示对话框的按钮:
<input type="button" name="PurchaseOrderButton" value="Test with JavaScript function"
class="btn btn-primary" id="idFindBtnTest2" />
单击上述按钮时触发jQuery事件处理程序:
$("#idFindBtnTest2").click(function () {
$('#id-FindModal').modal('show');
});
});
但是,我需要的是在关闭对话框并进行交易后刷新对话框代码。这是我遇到的问题。如果我更新了上面的代码,那么将发生$.get
事务以返回对话框的更新的局部视图,以后再单击该按钮将不会显示该对话框:
$("#idFindBtnTest2").click(function () {
$('#id-FindModal').modal('show');
var params = {};
url = '@Url.Action("_FindPurchaseOrderModal", "PurchaseOrder")';
$.get(url, $.param(params, false), function (data) {
$('#idCodeRefreshAreaForFindModal').html(data);
});
});
我认为对话框代码在显示之前就已经更新,因此这破坏了对话框。如果我删除试图显示对话框的行并再次运行此测试,则$.get
操作将成功更新模式的部分视图。如果我删除了$.get
部分,而只离开了show对话框部分,那么该对话框将显示正常。
我尝试在语句后放置sleep(2000)
语句以显示对话框,但这不起作用。对话框关闭后,如何执行$.get
用局部视图更新对话框代码?
答案 0 :(得分:1)
在对话框关闭后,如何执行$ .get用局部视图更新对话框代码?
这可能是更好的解决方案,而不是将事件绑定到显示模式的按钮,您可以在模式关闭时绑定事件。。
Bind a function to Twitter Bootstrap Modal Close
s[s > 0].reset_index()