Hen*_*o12 5 c# ajax jquery asp.net-mvc-4 jquery-datatables
在我的c#MVC4应用程序中,我正在使用两个部分视图.部分视图1位于具有id Partial_Analysis的div中,Partial View 2位于具有id Display_Average的div中.每个视图都包含一个datatables.net数据表.当在部分视图1中的表中选择行时,生成jquery ajax post,其使得部分视图2刷新,其中更新的数据表显示基于在部分视图1中进行的行选择的结果.
<script type="text/javascript" charset="utf-8">
$(document).ready(function () {
$('.rowselection').click(function (e) {
var tdata = $('#form1').serialize();
$.ajax({
type: "POST",
data: tdata,
url: "Home/PartialAverage",
success: function (result) { success(result); }
});
});
function success(result) {
$("#Display_Average").html(result);
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
单击特定按钮时,将刷新部分视图1.
<script type="text/javascript" charset="utf-8">
$(document).ready(function () {
$('#ChangeName').click(function (e) {
var tdata = $('#form1').serialize();
var origname = $('#NameDiv').find('input[name="Name"]').first().val();
var newname = $('#NameDiv').find('input[name="updatedName"]').first().val();
$.ajax({
type: "POST",
data: {
mCollection: tdata,
Name: origname,
updatedName: newname
},
url: "Home/ChangeName",
success: function (result) { success(result); }
});
});
function success(result) {
$("#Partial_Analysis").html(result);
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
在刷新局部视图1时,我希望第二部分视图也刷新.我试过这个导致无限循环.
<script type="text/javascript" charset="utf-8">
$(document).ready(function () {
$('#Partial_Analysis').ajaxSuccess(function (e) {
var tdata = $('#form1').serialize();
$.ajax({
type: "POST",
data: {
mCollection: tdata,
},
url: "Home/PartialAverage",
success: function (result) { success(result); }
});
});
function success(result) {
$("#Display_Average").html(result);
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
ajaxSuccess是一个全局处理程序,只要收到ajax调用的响应,就会调用它.在其中执行另一个ajax调用肯定会导致无限循环.
这里最好的选择可能是success在第一个局部视图的处理程序中更新第二个表:
function success(result) {
$("#Partial_Analysis").html(result);
reloadDisplayAverage();
}
function reloadDisplayAverage() {
var tdata = $('#form1').serialize();
$.ajax({
type: "POST",
data: {
mCollection: tdata,
},
url: "Home/PartialAverage",
success: function (result) { success(result); }
});
function success(result) {
$("#Display_Average").html(result);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31289 次 |
| 最近记录: |