日期过滤器不会重新加载数据,页面也不会

时间:2018-06-25 15:19:22

标签: c# asp.net

我有一个问题,发生的事情是我创建了一个日期过滤器,该过滤器从数据库中获取数据,该过滤器通过控制器使其变得完美,它获取了我正在过滤的数据,但没有重新加载页面,它只是什么也没做。 这是我在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>

我不知道该怎么办,因为如果手动重新加载页面会丢失过滤器数据

请帮助!!!

0 个答案:

没有答案