测试javascript字符串以获取PDF的完整URL

时间:2013-03-19 16:20:13

标签: javascript string url pdf

我有一个表单,我希望用户输入一个完整的URL,直接指向PDF(不是包含pdf的页面)。

目前我正在测试(并在必要时添加)http / https链接:

var str = textfield.value;

//test for http/https and add it if not there
var httpsInc = str.indexOf('https://') !== -1;
var httpInc = str.indexOf('http://') !== -1;
if ((httpsInc == false) & (httpInc == false)) {
    textfield.value = "http://" + str;
    var str = textfield.value;
}

然后测试它是否是有效的URL(基于此处的其他帖子):

var pattern = new RegExp('^(https?:\\/\\/)?'+ // protocol
    '((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|'+ // domain name
    '((\\d{1,3}\\.){3}\\d{1,3}))'+ // OR ip (v4) address
    '(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*'+ // port and path
    '(\\?[;&a-z\\d%_.~+=-]*)?'+ // query string
    '(\\#[-a-z\\d_]*)?$','i'); // fragment locator

if(!pattern.test(str)) {
    alert("Please enter a valid URL.");
    testresults=1;
} else {
    testresults=0;
}
return (testresults);

然后我要在测试中添加.pdf [类似str.indexOf('。pdf')!== -1] ,但我认为必须有更好的方法做这个。上面的RegExp可能会为我做所有这些测试我假设(测试.pdf在最后等),但我不确定如何修改它。修改它或者只检查我的字符串的最后4个字符是“.pdf”吗?

0 个答案:

没有答案