January 2011 - Artículos
 |
La llegada de SP1 de Visual Studio trae siempre novedades, es el turno para el soporte de HTML 5, proporcionando validación e IntelliSense de la mayoría de los atributos estándar de HTML5, hay que recordar que Visual Studio se lanzó originalmente sin estas características. |
Una vez instalado el SP1 , vamos a poder setear nuestro entorno para utilizar el esquema HTML5. Vamos a Tools-> Options -> Text Editor –> HTML –>Validation y podemos utilizar el esquema HTML5 o XHTML5.

O si tenemos la barra de HTML Souce Editing:

Podemos hacerlo desde la Barra de Herramientas:

Luego, a probar!, veamos el Intellisense:
Al escribir la etiqueta input=”…

Más aún para modo de ejemplo agregué:

Sin embargo no todo esta soportado, como ves, result y autosave quedaron fuera por el momento (aunque son propiedades soportadas por WebKit y no estándar aún), aunque esto no quita que los puedas ocupar. Notar que ya no necesitamos las comillas.
Al probarlo con Safari:

Tenemos nuestro range (slider) y el campo de búsqueda, con el gentil auspicio de HTML 5
.
Existe que se corrige con la version final del SP1 y tiene relación con la imposibilidad de utilizar tags del tipo:
<input id="rango" type="range" runat="server" />

Por el momento debemos utilizar :
<asp:textbox ID="TxRango" type="range" runat="server" />
Así que a practicar y a esperar el SP1 Final
.
Saludos
Gonzalo
Viendo algunos links de VariablenotFound, me encontré con la Web www.generatedata.com, que permite, como s u nombre lo dice , generar datos de prueba, tiene opciones para el dominio de cada uno de los campos, por ejemplo, autoincrement, nombres, rangos de edad, campo direcciones, ciudades, fono, etc. También permite cierta localización de los datos y por su puesto, la cantidad de datos a generar
Es muy sencillo de utilizar y es capaz de entregar los resultados como HTML,Excel, XML, CSV y SQL, teniendo como opciones de generación en SQL , Oracle y MySql.

Opciones de generación SQL.

Luego al generar:

Ya tienes los datos
, espero que te sirva, a mi me vino de perilla!
Saludos,
Gonzalo
Hola, quiero compartir este pequeño tip, ya que en algún momento te puede servir (por lo menos a mi me sirvió de lujo!").
Resulta que Internet Explorer 8, dentro de todas las optimizaciones para mostrar rápidamente las páginas, tiene un sistema de cache bastante agresivo (por decirlo de alguna manera), entonces, peticiones de Ajax con JQuery como:
$.ajax({
url:"engine/usuarios_funciones.asp",
type:"POST",
data: "nombre=" + $("#TxNombre").val,
async:true,
success:function(){
//Alguna Acción
},
error:function(){
alert("Error al intentar Ingresar");
}
});
funcionan muy bien en IE9, Chrome, Firefox, Safari, Opera, en IE9 en modo compatibilidad de IE8 , también, pero en IE8, nada, ni siquiera envía un error JavaScript, revisando con la consola de IE, y haciendo depuración de código JS, aparentemente nada extraño sucede, sin embargo la petición Ajax, no funcionaba. Luego en la barra seleccione la opción “Siempre actualizar desde el servidor”

Y si, funcionó!, entonces modifiqué la llamada:
$.ajax({
url:"engine/usuarios_funciones.asp",
type:"POST",
data: "nombre=" + $("#TxNombre").val,
async:true,
cache:false,
success:function(){
//Alguna Acción
},
error:function(){
alert("Error al intentar Ingresar");
}
});
Colocando la opción cache:false, que nos debería permitir el mismo resultado que al seleccionar “siempre actualizar desde el servidor”. Pero al probarlo, de nuevo el mismo problema: no funciona.
La solución, es la configuración global de las peticiones Ajax mediante jQuery, es bastante sencilla, y la puedes dejar al principio de tu código BLOCKED SCRIPT
$.ajaxSetup({ cache: false });
Y Listo!, funcionó!, lo extraño en un principio, es que solo algunas llamadas tenían este problema, otras funcionaban perfectamente, me imagino que el engine de cache de IE8 estaba metiendo la cola, jejejej.
Espero que te sirva
Saludos,
Gonzalo
PD: Estoy posteando menos este mes por que estoy a mega ultra súper a full, casi no duermo, pero me tomo el tiempito de repente para compartir algo, del próximo mes, creo que voy a tener un poco más de tiempo 
Ya esta listo, liberado y todo eso, jejeje, es WebMatrix, la nueva apuesta de Microsoft para desarrollo de Sitios Web, utilizando una sintaxis clara y limpia :Razor, la cual también se puede utilizar como engine de vistas para MVC.
Descárgalo Ahora!

Descárgalo aquí:
http://www.microsoft.com/web/webmatrix/
El próximo miércoles a las 15:00 horas , voy a dar un WebCast justamente de WebMatrix, te invito a inscribirte!
REGISTRATE AQUI
Y también mis post sobre WebMatrix, hay tutoriales básicos y como utilizarlo junto JqueryMobile .
Saludos,
Gonzalo
 | Hola, que tal? otra vez voy a escribir sobre un Plugin que les puede servir mucho para sus desarrollos, especialmente en ASP.NET Web Forms, en donde mientras más podemos evitar los postback para validaciones simples, mucho mejor. Si bien hay un control MaskedEdit en el Ajax Control Toolkit, es posible que no queramos incluir esta DLL para solo tener la funcionalidad de la máscara, o que quieras utilizarlo por ejemplo con ASP.NET MVC o PHP. El plugin del que hablo es JQuery Masked Input de digitalbush.com. Si bien, hay varios plugins que hacen lo mismo, me llamó la atención este por su simpleza de uso. |
Este plugin ha sido testeado con IE 6/7/8/9 , Firefox 1.5/2/3x, Safari, Chrome y Opera, por lo que nos da seguridad que funcionará para la mayoría de los usuarios. Las máscaras predefinidas son:
- a – Representa una letra (A-Z,a-z)
- 9 – Representa un número (0-9)
- * - Representa una letra o número(A-Z,a-z,0-9)
Se está trabajando para dar soporte a más símbolos para las máscaras, pero por mientras, esto ya nos sirve bastante.
Para utilizarlo, primero debemos incluir los Script, puedes bajar los archivos desde aquí, entonces los agregamos a nuestra Web Form.
<script type="text/javascript"
src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js">
</script>
<script src="js/jquery.maskedinput-1.2.2.js"type="text/javascript"></script>
Para el ejemplo, agregué los siguientes campos:

Ahora el código que asocia el plugin con los campos de texto:
<script type="text/javascript">
jQuery(function($) {
$("#TxFecha").mask("99/99/9999");
$("#TxFono").mask("(999) 999-9999");
$("#TxPatente").mask("aaaa-99");
$("#TxNumeros").mask("999.999");
$("#TxLetras").mask("aaaa");
});
</script>
Me gustó la opción de que si no estamos conforme con el clásico símbolo “_” para la mascara, entonces fácilmente podemos reemplazarla, por ejemplo con “*”, que se ve horriblemente feo:
$("#TxFecha").mask("99/99/9999",{ placeholder: "*"});
Sin embargo podemos también dejar vacío el atributo placeholder
$("#TxFecha").mask("99/99/9999",{ placeholder: " "});
Además se pueden definir nuestras propias definiciones de máscaras, por ejemplo, permitir el signo “+” o “-"
$.mask.definitions['~'] = '[+-]';
$("#TxNumeros").mask("~999.999");

| Como ven, algo sencillo, si bien creo que de todos modos le falta un poco de maduración, como el tema de pasar como argumento una función para cuando se completa el llenado del input según la máscara, que lo estuve probando pero no tuve resultados, sin embargo, con lo que vimos, podemos lograr buenos resultados |
Espero que les sirva!!
Gonzalo
Mi buen amigo Jesús Boch (@jboschaiguade) me ha invitado a hacer este WebCast:

Conoce lo nuevo de ASP.NET WebMatrix & Razor y lo nuevo de JQuery . JQueryMobile
Descripción:
En esta charla revisaremos el nuevo producto de ASP.NET WebMatrix , revisaremos la nueva sintaxis de Razor, NuPack y veremos el nuevo producto del Team JQuery : JQueryMobile , que nos permitirá crear aplicaciones para distintos dispositivos móviles de manera fácil y con gran compatibilidad entre los Smartphone actuales.
Ponente: Yo
Fecha: Miércoles 19 de Enero - 15:00 horas chile (gmt-4), 19:00 Madrid (gmt +1) Saludos!
Gonzalo