quiero validar un cuadro de texto que tienen algún valor URL como los blogs de dirección o sitio dirección cómo puedo validar el campo respectivo en jscómo puedo validar una URL en JavaScript utilizando expresiones regulares
Respuesta
hacer una prueba básica Expresión regular para la formateo A continuación, haga ping a la URL con un XMLHttpRequest para asegurarse de que existe. Un ejemplo usando jQuery ...
var url = $("#txtUserWebSite").val();
var reg = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)[email protected])?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([,-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([,-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([,-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
if(!reg.test(url)) {
alert("Invalid URL!");
return false;
}
$.get(url, function(dat, stat) {
if(stat == "success")
alert("Valid URL!");
else
alert("Invalid URL!");
})
supongo, que ya sabe cómo obtener el valor de <input>
con JavaScript. Entonces su problema es escribir la función específica para validar la URL.
Primero, podríamos considerar comprobando que la dirección URL es sintácticamente correcta.
Algunos ejemplos, que nuestro validador URL debe considerar definitivamente OK:
http://www.example.com.
http://www.google.ee/search?q=foo&sourceid=opera&ie=utf-8&oe=utf-8
https://ama-z-on.co.uk/index.html?a=hei%20hoo
ftp://ftp.linux.ee/public/gentoo/i386/portage-snapshot.tar.bz
http://he.wikipedia.org/wiki/שטרגליים#.D7.A8.D7.90.D7.95_.D7.92.D7.9D
sftp://123.1.255.128:80/pub
Y eso es sólo una pequeña fracción de la variedad real de URL-s posible. Y HTTP y FTP no son los únicos protocolos posibles para URL. Oh hombre, esa validación de URL es realmente difícil.
Pero supongamos que un URL válido debe comenzar con algunas letras, y luego ": //" y después de que lo que nunca. Para probar ese tipo de patrón que utilizaría una expresión regular que en JavaScript se parece a esto:
function validateUrl(url) {
return /^[a-z]+:\/\//i.test(url);
}
Las expresiones regulares son un gran tema general, que usted debe considerar aprender por sí mismo, sino sólo una breve explicación aquí:
/
- inicio de la expresión regular^
- coincide con el comienzo de la cadena de[a-z]
- partidos, ya sea a, b, c, ..., x, y, z.+
- significa que el patrón anterior se puede repetir una o más veces.:
- coincide con el símbolo de dos puntos en sí.\/
- Partidos barra diagonal/
(sin la barra invertida JavaScript pensaría que es el fin de la expresión regular)./
- finaliza la expresión regular.i
- Este es un modificador, que hace que esta expresión regular entre mayúsculas y minúsculas..test(url)
- llama al métodotest
de objeto de expresión regular conurl
como parámetro. Cuando el parámetro coincide con la expresión regular, devuelvetrue
de lo contrariofalse
.
Adicionalmente es posible que desee para permitir introducir una URL sin la parte http://
- esto significa que realmente necesita para validar el nombre de dominio o la dirección IP o lo que sea que le sigue.
supongo que está muy confundido por ahora, y eso es intencional. Realmente no debe escribir JavaScript para hacer la validación de la URL usted mismo, es muy difícil hacerlo bien.En su lugar, debe usar una función de biblioteca, que muchos expertos prueban y confirman que es correcta.
Tal vez el marco de JavaScript que está utilizando ya tiene una buena herramienta para ese trabajo. En ese caso, úsalo. Lamentablemente, no puedo sugerir ninguna biblioteca específica para la validación de URL específicamente.
Además, es posible que desee considerar haciendo ping a la URL como sugirió Josh Stodola, para comprobar que realmente existe. Aunque, la forma particular que sugiere Josh, podría ser problemático en caso de que el recurso al que hace referencia la URL sea un archivo de 10GB :)
Consulte Regular Expression Library, que tiene un gran repositorio de expresiones regulares para todo tipo de validaciones. También proporcionan una herramienta de prueba en línea.
- 1. (rieles) validar ayuda URL con expresiones regulares
- 2. Validar expresiones matemáticas usando expresiones regulares?
- 3. C# expresiones regulares ayuda - validar la entrada
- 4. Combinando expresiones regulares en Javascript
- 5. de expresiones regulares para validar una marca de tiempo
- 6. expresiones regulares (expresiones regulares), reemplace la segunda aparición en javascript
- 7. JavaScript reemplazar/expresiones regulares
- 8. expresiones regulares en Javascript con jQuery Contiene expresiones regulares extensión
- 9. ¿Cómo puedo concatenar literales de expresiones regulares en JavaScript?
- 10. de expresiones regulares para la validación URL
- 11. expresiones regulares para analizador url
- 12. Cómo dividir cadenas utilizando expresiones regulares
- 13. Obtener el nombre de archivo de la URL utilizando expresiones regulares o Javascript
- 14. componente de expresiones regulares contraseña componente (javascript)
- 15. validar la dirección de correo electrónico utilizando expresiones regulares en la página de afeitar
- 16. ¿Cómo validar un nombre de usuario con expresiones regulares?
- 17. Javascript expresiones regulares de código postal canadiense
- 18. ¿Cómo detecta JavaScript las expresiones regulares?
- 19. javascript expresiones regulares como funciones?
- 20. JavaScript expresiones regulares y subclases
- 21. ¿Qué significa [^] en expresiones regulares de Javascript?
- 22. partes Obtención de una dirección URL (expresiones regulares)
- 23. JFormattedTextField utilizando un formateador de expresiones regulares?
- 24. números de teléfono Normalizar utilizando expresiones regulares
- 25. URL de validación de expresiones regulares
- 26. Cómo encontrar reemplazar utilizando grupos de expresiones regulares en vim
- 27. Expresiones regulares en findstr
- 28. Javascript String.replace con expresiones regulares dinámicas?
- 29. JavaScript crear expresiones regulares mediante programación
- 30. expresiones regulares en Vimscript
Es extreeeem fácil de usar un motor de búsqueda, pero lmgtfy: http://lmgtfy.com/?q=validate+url+javascript – tuergeist