Nella mia applicazione C# MVC4 sto lavorando con due viste parziali. Partial View 1 si trova in un div con id Partial_Analysis, Partial View 2 è in un div con id Display_Average. Ogni vista contiene un datatables.net datatable. Quando una riga viene selezionata all'interno della tabella nella vista parziale uno, viene creato un post jquery ajax che fa sì che la vista parziale 2 si aggiorni con un datatable aggiornato che mostra i risultati in base alla selezione di riga effettuata nella vista parziale 1.La visualizzazione parziale si aggiorna dopo Jquery Ajax Post
<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>
Quando si fa clic su un pulsante specifico, la vista parziale 1 viene aggiornata.
<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>
Dopo questo aggiornamento della vista parziale 1, desidero aggiornare anche la seconda vista parziale. Ho provato questo che causa un ciclo infinito.
<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>
Ha funzionato perfettamente. – HendPro12
Puoi usare '$ .post' – Kiquenet