我無法讓自定義網址驗證規則發揮作用。如何在不使用http的情況下進行url驗證(或在驗證通過後添加它)?
我添加新的規則:
jQuery.validator.addMethod("complete_url", function(val, elem) {
// if no url, don't do anything
return /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[-;:&=\+\$,\w][email protected])?[A-Za-z0-9.-]+|(?:www.|[-;:&=\+\$,\w][email protected])[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[\w]*))?)/.test(val);
});
...
$("#new_website").validate({
rules: {
url: "complete_url",
'website[url]': {
url: true,
required: true}
}
});
但它返回我
invalid URL
我檢查正則表達式在這裏 - http://www.rubular.com/。它正在工作,但未能通過我的自定義驗證器。
我在做什麼錯了?
這是什麼?這是一個有效的答案嗎?我正在尋找相同問題的解決方案。 – stephenmurdoch
@marflar,它爲我工作。試試看,並告訴我是否可以。 – skrypalyk