我有一个问题,发生的事情是我创建了一个日期过滤器,该过滤器从数据库中获取数据,该过滤器通过控制器使其变得完美,它获取了我正在过滤的数据,但没有重新加载页面,它只是什么也没做。 这是我在MVC-2中的代码c#
public ActionResult Cierre(string fecha, string zonas, string empresas)// metodo ActionResult que llena toda la vista para ser mostrada por el navegador
{
double iny, ret, bal, ingr;
string[] seriesgrafico = new string[1];
seriesgrafico[0] = "Datos";
cm.zona = "";
cm.empresa = "";
if (zonas == "norte")
{
// el filtro puede cambiarse, al modificar el "value" que retorna desde el html
ViewBag.zona = " - Zona Norte ";
}
else if (zonas == "centro")
{
cm.zona = " - Zona Centro ";
}
else if (zonas == "sur")
{
cm.zona = " - Zona Sur ";
}
if (empresas == "Enel Generación")
{
cm.empresa = " - ENEL ";
}
if (fecha != null)
{
today1 = Convert.ToDateTime(fecha.ToString().Substring(3, 2) + "-" + fecha.ToString().Substring(0, 2) + "-" + fecha.ToString().Substring(6, 4));
} //Fecha is my filter and get the data
cm.minimotecnico = minimoTecnico(today1, zonas, empresas);
cm.costomarginal = costoMarginal(today1, zonas, empresas);
cm.ingresoscompania = ingresoCompania(today1, zonas, empresas);
cm.costooperacional = costoOperacion(today1, zonas, empresas);
ingr = ingresoTarifario(today1, zonas, empresas);
cm.ingresotarifario = ingr.ToString("C", nfi);
cm.margenoperativo = margenOperativo(today1, zonas, empresas);
iny = inyecciones(today1, zonas, empresas);
cm.inyecciones = iny.ToString("N", nfi);
ret = retiros(today1, zonas, empresas);
cm.retiros = ret.ToString("N", nfi);
cm.inyeccionesVAL = inyeccionesValorizadas(today1, zonas, empresas);
cm.retirosVAL = retirosValorizados(today1, zonas, empresas);
cm.balance = balance(iny, ret);
bal = balanceValorizados(today1, zonas, empresas);
cm.balanceVAL = bal.ToString("C", us);
cm.balanceReal = balanceReal(bal, ingr);
cm.fechainicio = inicio.ToString("dd MMM yyyy", CultureInfo.CreateSpecificCulture("es-CL"));
cm.fechafin = fin.ToString("dd MMM yyyy", CultureInfo.CreateSpecificCulture("es-CL"));
cm.fechagrafico = today1.ToString("MMMM yyyy", CultureInfo.CreateSpecificCulture("es-CL"));
cm.cantidaddias = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(graficodays);// depende de funcion margenOperativo
cm.valordiario = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(valorgraficodiario);
cm.fechapdf = today1;
int[] valorestudio = new int[valorgraficodiario.Length];
for (int i = 0; i < valorgraficodiario.Length; i++)
{
valorestudio[i] = 0;
}
cm.valorestudio = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(valorestudio);
ViewBag.estudio = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(seriesgrafico);
ViewBag.titulo = "Cierre" + cm.zona + "" + cm.empresa + "";
ViewBag.titulopdf = "";
return View("~/Views/Balances/Balances.aspx", cm); //is redirected to the view but does not filter anything does not recharge the page
}
我的aspx代码(代码的一部分)
<script type="text/javascript">
$(document).ready(function(){
fnLlenaEmpresas(); //Funcion que llena el combobox de la lista
$("#button").click(function(){
//var MyAppUrlSettings = {
// MyUsefulUrl : @Url.Action("FiltroFecha","Cierre")
//}
$.ajax({
type: "POST",
url: '<%= Url.Action("Cierre", "Cierre") %>',
//data: "{fecha:'" +$("[id*=fecha]").val() + "'}",
data: "{fecha:'" +$("[id*=TextBox1]").val() + "'}",
contentType: "application/json; charset=utf-8",
dataType: "html",
success: function (data) {
alert("ok" + data.d.toString());
},
error: function (data){
alert(data);
}
});
//Cerrar PopUp
//Refresh gráfico
});
});
function fnLlenaEmpresas()
{
$.ajax({
//url: "/ControllerName/ActionName",
url: '<%= Url.Action("comboBoxEmpresas", "Cierre") %>',
success: function(data) {
// your data could be a View or Json or what ever you returned in your action method
// parse your data here
jQuery.each(data, function (i, val) {
$("#empresas").append("<option value='" + val.Value + "'>" + val.Text + "</option>");
});
},
error: function () {
alert("An error has occured!!!");
}
});
}
$( function() {
//$("[id*=fecha]").datepicker({dateFormat:'dd-mm-yy'});
$("[id*=TextBox1]").datepicker({dateFormat:'dd-mm-yy'});
} );
</script>
<div class="container-fuild">
<div class="col-lg-12 col-sm-12">
<div class="well row" style="margin-top: 25px; padding: 0px; margin-bottom: 0px;">
<h1 style="text-align: center; font-family: Univers Bold; font-size: 30px; margin-top: 10px; color: #073492;"><%=ViewBag.titulo %></h1>
</div>
<div class="col-sm-12 col-lg-4">
<div class=" row">
<h3 style="text-align: center; font-family: Univers Light; font-size: 30px; color: #073492;">Balance Energía Acumulado <%=ViewBag.titulopdf %></h3>
<table class="table table-bordered">
<tbody>
<tr>
<td class="bold info">Fecha</td>
<td><%=Model.fechainicio%></td>
<td><%=Model.fechafin %></td>
</tr>
<tr>
<td class="bold info ">Inyecciones</td>
<td class=""><%=Model.inyecciones %> (KWH)</td>
<td class=""><%=Model.inyeccionesVAL %>
<br />
(USD)</td>
</tr>
<tr>
<td class="bold info ">Retiros</td>
<td class=""><%=Model.retiros %> (KWH)</td>
<td class=""><%=Model.retirosVAL %>
<br />
(USD)</td>
</tr>
<tr>
<td class="bold info">Balance</td>
<td class="bold active"><%=Model.balance %> (KWH)</td>
<td class="bold active"><%=Model.balanceVAL %> (USD)</td>
</tr>
</tbody>
</table>
</div>
<div class=" row">
<table class="table table-bordered">
<tbody>
<tr>
<td class="bold info">Ingreso Tarifario de Energía</td>
<td class=" "><%=Model.ingresotarifario %> (USD)</td>
</tr>
<tr>
<td class="bold info">Costo Mínimo Técnico</td>
<td class=" "><%= Model.minimotecnico %> (USD)</td>
</tr>
<%-- <tr>
<td class="bold info">Costo Marginal a la fecha</td>
<td><%= Model.costomarginal %> (USD)</td>
</tr>--%>
</tbody>
</table>
<center>
<div class="col-sm-12 visible-lg ">
<button type="button" class="btn btn-secondary btn-md">
<span class="glyphicon glyphicon-repeat" aria-hidden="true"></span> Actualizar
</button>
<button type="button" class="btn btn-secondary btn-md" data-toggle="modal" data-target="#myModal" >
<span class="glyphicon glyphicon-filter" aria-hidden="true"></span> Filtros
</button>
</div>
<div class="col-sm-6 col-lg-12 visible-lg ">
<button type="button" class="btn btn-secondary btn-md" onclick="location.href ='<%= Url.Action("Print", "Cierre", new {fecha=Model.fechapdf, zonas=Model.zona, empresas=Model.empresa} )%>'" style="margin-top: 5px;" >
<span class="glyphicon glyphicon glyphicon-save-file" aria-hidden="true"></span> Descargar PDF
</button>
</div>
<div>
<h3 style="text-align: center; font-family: Univers Light; font-size: 18px; color: #073492;">Fecha:</h3>
<asp:TextBox ID="TextBox1" style="width: 162px;height: 28px;" name="fecha" runat="server" Width="160px" />
<input type="button" class="btn btn-secondary btn-group-xs" style="height: 27px;padding-right: 8px;padding-left: 7px;padding-top: 0px;padding-bottom: 0px;" value="Grabar" id="button">
</div>
</center>
</div>
</div>
我不知道该怎么办,因为如果手动重新加载页面会丢失过滤器数据
请帮助!!!