none
poner funcion javascript en libreria de clases RRS feed

  • Pregunta

  • hola :

    tengo una libreria de clases generada por mi en la cual tengo por ejemplo esta funcion generica para exportar a PDF , entre otras :

     public void ExportGridToPDF(GridView toGridView, String tcNombreArchivo)
            {
                
                HttpContext.Current.Response.ContentType = "application/pdf";
                HttpContext.Current.Response.AddHeader("content-disposition", "attachment;filename= "+ tcNombreArchivo +".pdf");
                HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
                StringWriter sw = new StringWriter();
                HtmlTextWriter hw = new HtmlTextWriter(sw);
                toGridView.RenderControl(hw);
                StringReader sr = new StringReader(sw.ToString());
                Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
                HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
                PdfWriter.GetInstance(pdfDoc, HttpContext.Current.Response.OutputStream);
                pdfDoc.Open();
                htmlparser.Parse(sr);
                pdfDoc.Close();
                HttpContext.Current.Response.Write(pdfDoc);
                HttpContext.Current.Response.End();
                toGridView.AllowPaging = true;
                toGridView.DataBind();
            }

     por otro lado , en un webform puse esta funcion en javascript para detectar si esta activada la mayuscula :

     <script type="text/javascript">
               $(function () {
                   var isShiftPressed = false;
                   var isCapsOn = null;
                   $("#Txtclave").bind("keydown", function (e) {
                       var keyCode = e.keyCode ? e.keyCode : e.which;
                       if (keyCode == 16) {
                           isShiftPressed = true;
                       }
                   });
                   $("#Txtclave").bind("keyup", function (e) {
                       var keyCode = e.keyCode ? e.keyCode : e.which;
                       if (keyCode == 16) {
                           isShiftPressed = false;
                       }
                       if (keyCode == 20) {
                           if (isCapsOn == true) {
                               isCapsOn = false;
                               $("#error").hide();
                           } else if (isCapsOn == false) {
                               isCapsOn = true;
                               $("#error").show();
                           }
                       }
                   });
                   $("#Txtclave").bind("keypress", function (e) {
                       
                       var keyCode = e.keyCode ? e.keyCode : e.which;
                       if (keyCode >= 65 && keyCode <= 90 && !isShiftPressed) {
                          
                           isCapsOn = true;
                           $("#error").show();
                       } else {
                           $("#error").hide();
                       }
                   });
               });
           </script>

    la funcion anda ok .

    la pregunta es . si hay alguna manera de incluirla en la libreria emncionada anteriormente 

    parametrizando el textbox donde la uso . desde ya gracias 


    • Editado ciclon25 jueves, 23 de junio de 2016 23:54
    jueves, 23 de junio de 2016 23:48

Respuestas

  • Puedes tener tus scripts en archivos separados y refenciarlos en el html de la pagina para poder consumir las funciones.

    Algo así:

    <script src="Scripts/miScript.js" type="text/javascript"></script>



    Saludos.

    • Marcado como respuesta ciclon25 viernes, 24 de junio de 2016 2:31
    viernes, 24 de junio de 2016 1:04

Todas las respuestas

  • Puedes tener tus scripts en archivos separados y refenciarlos en el html de la pagina para poder consumir las funciones.

    Algo así:

    <script src="Scripts/miScript.js" type="text/javascript"></script>



    Saludos.

    • Marcado como respuesta ciclon25 viernes, 24 de junio de 2016 2:31
    viernes, 24 de junio de 2016 1:04
  • gracias por la rta :

    aplique lo que me dijiste y anduvo barbaro .

    puse la funcion en un archivo .js:

                                                    

     $(function () {
                   var isShiftPressed = false;
                   var isCapsOn = null;
                   $("#Txtclave").bind("keydown", function (e) {
                       var keyCode = e.keyCode ? e.keyCode : e.which;
                       if (keyCode == 16) {
                           isShiftPressed = true;
                       }
                   });
                   $("#Txtclave").bind("keyup", function (e) {
                       var keyCode = e.keyCode ? e.keyCode : e.which;
                       if (keyCode == 16) {
                           isShiftPressed = false;
                       }
                       if (keyCode == 20) {
                           if (isCapsOn == true) {
                               isCapsOn = false;
                               $("#error").hide();
                           } else if (isCapsOn == false) {
                               isCapsOn = true;
                               $("#error").show();
                           }
                       }
                   });
                   $("#Txtclave").bind("keypress", function (e) {

                       var keyCode = e.keyCode ? e.keyCode : e.which;
                       if (keyCode >= 65 && keyCode <= 90 && !isShiftPressed) {

                           isCapsOn = true;
                           $("#error").show();
                       } else {
                           $("#error").hide();
                       }
                   });
             });

    lo que queria saber es como parametrizar  Txtclave . o sea , me imagino que va como parametro en el encabezado 

    function ( string tcTextbox ) en los parentesis ,   pero como se lo paso desde donde llama a la funcion ? gracias 

    sábado, 25 de junio de 2016 0:31
  • Prueba con esto:

    <asp:TextBox ID="txtClave" onchange="javascript:MiFuncion(this.value);" runat="server" Width="120px" Text=""></asp:TextBox>


    Saludos.

    sábado, 25 de junio de 2016 18:23