[英]JQuery validate website address input
我有一個輸入網址的文本,我想驗證一下。
應允許使用的示例包括:www.somesite.com或.net或.org或對網站地址有效的任何內容。
可能應該使用jQuery或僅使用普通Javascript
免責聲明:這是用regex文字javascript編寫的url驗證的一個非常幼稚的實現,目的是解釋這種努力背后的想法,該代碼不適用於任何容量的生產。
以下代碼適用於各種情況。 您將要驗證這些案例是否符合您的需求。 上位生物是多種多樣的生物,包括可能使用的utf-8字符(未包含在下面的基本設置中)。 對於這些情況,您將需要研究有關正則表達式的更多信息(無論如何,以任何能力進行JavaScript開發都是絕對值得的)。
var urls = ['www.someurl.com', // true
'www.someurl.net', // true
'google.org', // true
'not a url', // false
'someone@funky.com', // false
'http://www.yahoo.com', // true
'https://www.clutter.org', // true
'ftp://test.fail', // false
'http://this.is.a/path/to/my/resource.html', // true
'adress-with-hyphens.org']; // true
for( var i = 0, url; url = urls[i++]; ){
console.log(url, /^(https?:\/\/)?([\w\d\-_]+\.)+\/?/.test(url));
}
解釋這段代碼 :
/
啟動正則表達式文字。 (
打開選擇組。 http
是要搜索的字符串。 s?
使字符串的s
部分為可選。 :
是對冒號字符的搜索。 \\/
是轉義字符,后跟要搜索的字符( /
),這在許多情況下很有用。 )?
使組可選。 下一組包含對任何單詞,數字,連字符或下划線字符(一個或多個+
)的查找,后跟一個.
( \\.
)。 后面跟一個可選的/
。 /
結束時關閉正則表達式文字。 test
是任何正則表達式對象上的一種方法,用於查看字符串是否通過它。 要測試的字符串是唯一的參數。
您要使用正則表達式。
正則表達式是一種模式匹配技術,旨在搜索正則語言。 這意味着您可以使用正則表達式來查找和匹配許多適合您所需模式的不同事物。
在regular-expressions.info上開始學習正則表達式(正則表達式的縮寫)的好地方
他們有很棒的指南來幫助您入門
一旦了解了它們,您將了解為什么這種模式
[www]?\..*?\.(com|net|org)
的意思和原因盡管可以使用,但與網站匹配不是一個很好的模式。
祝你好運,狩獵愉快
我注意到您的標題引用了jQuery-盡管我認為這個問題已經死了,但我想將其發布給其他任何人。 這個jQuery插件簡單易用,功能強大。 盡管插件對驗證單個字段的作用過大,但是如果您在同一表單上進行其他驗證(包括必填字段),則可能會有所幫助。 以下示例是從文檔中提取的。 初始化插件后,您只需添加要包含的驗證類。 如果需要,可以創建一個海關,但它要復雜一些。
http://bassistance.de/jquery-plugins/jquery-plugin-validation/
用法很簡單:
$("#commentForm").validate();
形成:
<form class="cmxform" id="commentForm" method="post" action="">
<p>
<label for="cname">Name</label>
<em>*</em><input id="cname" name="name" size="25" class="required" minlength="2" />
</p>
<p>
<label for="cemail">E-Mail</label>
<em>*</em><input id="cemail" name="email" size="25" class="required email" />
</p>
<p>
<label for="curl">URL</label>
<em> </em><input id="curl" name="url" size="25" class="url" value="" />
</p>
<p>
<label for="ccomment">Your comment</label>
<em>*</em><textarea id="ccomment" name="comment" cols="22" class="required"></textarea>
</p>
<p>
<input class="submit" type="submit" value="Submit"/>
</p>
</form>
就是這樣XD
$.ajax({url: webpage ,type:'HEAD',error:function(){
alert('Oops !');
}});
我認為此鏈接將對您有所幫助...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.