验证表单输入类型URL的扩展名

时间:2015-09-03 14:43:16

标签: javascript jquery html forms validation

我正在制作一个表格,您可以将徽标作为网址。我知道如何验证文件扩展名,但不知道表单中的字符串。我已经开始使用我在这里提到过的代码,但我完全迷失了。

<script>
$('#editForm_Submit').click(function (e) {
    e.preventDefault();
    var re = /^[A-Za-z]+$/;
    if(re.test(document.getElementById("LogoUrl").value))
        alert('Valid Name.');
    else
        alert('Invalid Name.');
});
</script>

它必须防止默认并检查jpg,png和jpeg上的扩展。 如果验证比提交,则返回false。

我也试过

<script>
jQuery(document).ready(function () {
    $('#editForm_Submit').click(function (e) {
        e.preventDefault();
        jQuery("input[type=url]").each(function () {
            jQuery(this).rules("add", {
                accept: "png|jpe?g",
                messages: {
                    accept: "Only jpeg, jpg or png images"
                }
            });
        });
    });
});
</script>

我知道如何使用php,但我想尝试使用javascript或jquery

1 个答案:

答案 0 :(得分:0)

您需要一个URL的正则表达式:

检查此问题Trying to Validate URL Using JavaScript

$('#editForm_Submit').click(function (e) {
    e.preventDefault();
    var re = /^[A-Za-z]+$/;
    if(validateURL(document.getElementById("LogoUrl").value)))
        alert('Valid Name.');
    else
        alert('Invalid Name.');
});


function validateURL(textval) {
  var urlregex = new RegExp(
    "^(http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&amp;%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&amp;%\$#\=~_\-]+))*$");
  return urlregex.test(textval);
}

相关问题