argumento que pasa a una función de JavaScript desde un evento de reloj de botón asp.net c #

StackOverflow https://stackoverflow.com/questions/1818689

Pregunta

tengo que pasar un valor de cadena que se almacena en una variable a una función de JavaScript

que estoy llamando en un evento de clic de botón de mi aplicación web asp.net c #.

He intentado algunas formas pero no estoy obteniendo exactamente.

a continuación se muestra el código que estoy usando

 protected void Button1_Click(object sender, EventArgs e)
    {
        myButton.Attributes.Add("onclick", "openNewWindow(spcd)");
    }

esta es mi función de evento de clic de botón

'opennewwindow' es mi función de JavaScript y 'spcd' es mi variable, que es una variable de cadena, que es una variable de cadena pública.

a continuación está mi función de JavaScript

<script type="text/javascript">

function openNewWindow(spcd) {
//alert("hello");
var tt = spcd;
alert(tt);
var theurl="http://www.gmail.com";
 popupWin = window.open(theurl,
 '_blank',
 'menubar, toolbar, location, directories, status, scrollbars, resizable, dependent, width=640, height=480, left=0, top=0')

}

</script>

pero cuando me gusta esto, mi javascript no funciona.

¿Alguien puede decir cuál es la forma real de hacer esto?

¿Fue útil?

Solución

El código que ha proporcionado no llama a una función Javascript desde C #. Lo que hace es agregar un nuevo atributo al botón para conectar un controlador de eventos Javascript. El JS no se ejecutará hasta la próxima vez que haga clic en el botón. Si desea ejecutar una función JS al hacer clic en un botón, haga lo que está haciendo en Page_Load, o donde sea, pero no en el controlador de eventos del botón.

Además, puede concatenar la cadena que debe enviarse como el valor del atributo de la siguiente manera:

myButton.Attributes.Add (" onclick " ;, " openNewWindow ('" + spcd + "'); " ;;

Solo asegúrate de hacerlo en algunos de los controladores de eventos del ciclo de vida de la página (NO EL MANEJO DEL EVENTO DE CLIC DE BOTÓN), y también de que la variable spcd tiene el valor que necesitas en ese punto del ciclo de vida.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top